add direct GitHub OIDC release recording to registry API#48
Conversation
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (2)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
9ff5245 to
cfe5c6a
Compare
32266d1 to
b06ec1f
Compare
7ead725 to
15555a7
Compare
| case http.StatusOK: | ||
| result, _ := json.Marshal(map[string]interface{}{ | ||
| "status": "success", | ||
| "code": 200, |
There was a problem hiding this comment.
nit: you had the status codes right here in the switch statement :)
There was a problem hiding this comment.
Nice catch thank you
Add record-registry-api job that runs after both legacy recording paths complete (dist manifest + Lambda invocation). Uses GitHub OIDC for per-connector authentication. Includes record-release Go command that reads the merged manifest, connector repo files (docs, config_schema, capabilities), and GitHub release notes, then POSTs to the registry API. Also fixes record-connector-registry to gate on docker job success, preventing incomplete manifests when docker builds fail.
15555a7 to
d25498c
Compare
Why
The connector registry API replaces the per-connector Lambda release recording pipeline. During dual-write migration, each release records to both the legacy Lambda path and the registry API. The registry API authenticates CI via GitHub OIDC with per-connector isolation through the repository claim.
What this changes
record-release Go command (
cmd/record-release/main.go): Type-safe transformation from the merged manifest (protojson) to the registry API RecordRelease request format. Maps asset fields (href to downloadUrl, signatureHref to signatureUrl, etc.), extracts image refs, reads optional docs/connector.mdx, and POSTs with Bearer auth. Handles 200 (success) and 409 (already exists) as non-error for dual-write compatibility.release.yaml workflow changes: Adds
record-registry-apias a separate job that runs after both legacy recording jobs complete (record-connector-registry+record-lambda-registry). Uses the merged manifest output from the dist recording job. Steps:connector-registryaudienceFields sent to the registry API:
Bug fix:
record-connector-registryjob condition now checksgoreleaser-dockerresult. Previously a failed docker build still triggered the manifest upload and S3 sync with incomplete artifacts (missing container images). Docker must now succeed or be skipped.Testing
test release
v0.1.120-test.7onbaton-github-testvalidated the full pipeline 3/11All jobs succeeded: record-connector-registry (legacy dist), record-lambda-registry (legacy lambda), record-registry-api (new path), verify-release
