Repository navigation
ci: release automatically from conventional commits - #10
Conversation
szymeo
left a comment
There was a problem hiding this comment.
Lead review: logdash moved from services to domains, so the smoke test must use the domain model instead of a project.
LOGDASH_API_KEYbecomes the ingest key of one shared domain, "SDK smoke tests" (its Settings page, "Ingest key": one write-only key for every app on the domain). The owner adds it, replacing this repo's old per-service key.- Send with the SDK's
appoption set torust-sdk, so each SDK shows up as its own app on that domain. LOGDASH_PERSONAL_API_KEYis a read-only key (Logs read, Metrics read) restricted to that domain.GET https://api.logdash.io/personal-api-keys/whoamireturnsaccess: { kind: "clusters", ids: [domainId] }. Fail with a clear message unless the kind isclustersand there is an id.- Read logs from
GET /clusters/{domainId}/logs?apps=rust-sdk(narrowed to this run's seed) and metrics fromGET /clusters/{domainId}/metrics(each entry hasapp,name,value: match onappandname), both with the same bearer. Drop/projects/{id}/.... - Never print an API key, not even one CI masks.
Check paths, query params and response shapes against logdash-io/logdash.io: apps/backend/src/log/core/log-core.controller.ts (readClusterLogs, ReadClusterLogsQuery in log/core/dto/cluster-logs.query.ts) and apps/backend/src/metric/core/metric-core.controller.ts (readClusterMetrics). The check program needs the app option, so it runs against the version this PR releases; before that, a manual run on this branch is not expected to pass.
…nventional Commits and fix its…
szymeo
left a comment
There was a problem hiding this comment.
Lead review: no blocking code findings (release computes 1.1.0, publishes once before tagging, smoke test pins logdash@=$V, endpoints match the backend). Fix these before merge:
ci.yml~125: replacesecrets: inherit, which handsCARGO_REGISTRY_TOKENto the smoke test, with onlyLOGDASH_API_KEYandLOGDASH_PERSONAL_API_KEY, declared under the smoke workflow'sworkflow_call.ci.yml~104:persist-credentials: falseon the release checkout, so the write token is not on disk whilecargo publishruns dependency build scripts.ci.yml~112, make the release re-runnable: skip the publish when the version is already in the index, e.g.curl -fsS https://index.crates.io/lo/gd/logdash | grep -qF "\"vers\":\"$V\"" || cargo publish --allow-dirty, then tag, so a rerun after a failedgh release createjust tags.pr-title.yml:permissions: {}abovejobs:;check-deployed-package.yml:permissions: contents: read.scripts/version.ts~4: the comment still names tony's Info.plist; say the Cargo.toml version is the placeholder CI overwrites.check-deployed-package/README.md~12: say the check needs a version withConfig::app(1.1.0 or later).
LOGDASH_PERSONAL_API_KEY is coming from the owner; LOGDASH_API_KEY is already the smoke-test domain's ingest key.
…nventional Commits and fix its…
Summary
ci: release automatically from conventional commits
Publish
malini/01JCECE4BA8D75944779F5EABAagainstmain..github/workflows/check-deployed-package.yml.github/workflows/ci.yml.github/workflows/pr-title.ymlcheck-deployed-package/README.mdscripts/version.tsValidation