Repository navigation
Conversation
#619 made every operator init container that writes pod storage use the gateway's effective UID. Do the same for init-tmp-dir so the sticky /tmp directory belongs to the user that writes to it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Release Please has failed on every push since the repository moved from paperclipinc to stubbi: vars.RELEASE_BOT_APP_ID and secrets.RELEASE_BOT_PRIVATE_KEY were settings of the old organization, so actions/create-github-app-token aborts with "Input required and not supplied: app-id" before release-please runs. - release-please.yaml and release.yaml mint the App token only when the App is configured, then fall back to RELEASE_PLEASE_TOKEN and finally GITHUB_TOKEN. With GITHUB_TOKEN, tag pushes and release publishing do not trigger other workflows, so release.yaml and operatorhub.yaml are dispatched explicitly (release.yaml gains a workflow_dispatch trigger and only runs on tag refs). - The GHCR namespace for the image and the chart comes from one place, vars.IMAGE_NAMESPACE (default paperclipinc), used by release.yaml and .goreleaser.yaml. release.yaml previously used the repository owner (now stubbi) for signing and the chart while GoReleaser pushed to paperclipinc. A preflight fails the release if the namespace does not match the chart's default image.repository (#536). - GHCR login accepts GHCR_PUSH_TOKEN / GHCR_PUSH_USER, needed to push into a namespace the repository owner does not own. - GoReleaser creates the release in stubbi/openclaw-operator. - make verify-signing accepts both the old and the new workflow identity. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
90352ae to
0263840
Compare
|
Merge order note (maintenance pass, 2026-10-11). The open stubbi PRs are stacked so they apply cleanly in this order: #623 → #627 → #620 → #618 → #617 → #628 → #629. This is position 2 of 7. This branch has #623 (and everything below it) merged in, so until those land the diff here also shows their changes; once they are squash-merged, "Update branch" reduces it to this PR's own changes without conflicts. #623 is at the bottom because the required E2E check cannot pass without its sticky /tmp fix (OpenClaw >= 2026.9.6 crash-loops otherwise). Branch protection requires an up-to-date branch, so after each merge click "Update branch" on the next PR and let CI re-run before merging it. |
|
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. If this PR is still relevant, please push updates or leave a comment. |
|
Not stale |
Summary
Fixes #625.
Release Please has failed on every push since the repository moved from
paperclipinctostubbi.vars.RELEASE_BOT_APP_IDandsecrets.RELEASE_BOT_PRIVATE_KEYwere settings of the old organization, soactions/create-github-app-tokenaborts withInput required and not supplied: app-idbefore release-please runs. The issue also points out a second problem the first release would hit:release.yamlsigns the image and pushes the chart under the repository owner (nowstubbi), while GoReleaser, the chart default, the bundle CSV andoperatorhub.yamlall useghcr.io/paperclipinc.Changes
release-please.yaml,release.yaml): the App token is minted only whenvars.RELEASE_BOT_APP_IDis set. Otherwise the workflows usesecrets.RELEASE_PLEASE_TOKEN, thenGITHUB_TOKEN, and log a warning.GITHUB_TOKENtag pushes and release publishing do not trigger other workflows, so in that mode release-please dispatchesrelease.yaml --ref <tag>andrelease.yamldispatchesoperatorhub.yaml -f tag=<tag>.release.yamlgains aworkflow_dispatchtrigger, and its jobs only run onrefs/tags/v*.vars.IMAGE_NAMESPACE(defaultpaperclipinc) feedsrelease.yaml(cosign signing, SBOM, chart push) and.goreleaser.yaml(envOrDefault). A preflight step fails the release before anything is pushed if it does not match the chart's defaultimage.repository, which prevents a repeat of bug: chart versions 0.32.0-0.34.4 shipped with stale image.repository (openclaw-rocks) after org rename, causing silent ImagePullBackOff #536.secrets.GHCR_PUSH_TOKEN/vars.GHCR_PUSH_USERwhen set.GITHUB_TOKENcannot push into a namespace the repository owner does not own.stubbi/openclaw-operatorinstead of relying on the redirect.make verify-signing(weekly drift check) accepts both the old (paperclipinc/...) and the new (stubbi/...) workflow identity. Releases signed from here will carry the new one.Testing
actionlintclean on the changed workflows.goreleaser checkpasses.make verify-signingstill verifiesghcr.io/paperclipinc/openclaw-operator:v0.40.0with the widened identity regexp.Owner actions after merge (settings, not code)
Release Please goes green with no further action, but it then uses the
GITHUB_TOKENfallback. Its release PRs get no CI run until someone pushes a commit to them. For the normal flow:stubbi(permissions: Contents RW, Pull requests RW, Actions RW; install it on this repo), then set the repository variableRELEASE_BOT_APP_IDand the secretRELEASE_BOT_PRIVATE_KEY. Or:RELEASE_PLEASE_TOKENto a fine-grained PAT for this repo with the same permissions.ghcr.io/paperclipinc(no change for users, Artifact Hub's verifiedoci://ghcr.io/paperclipinc/chartsrepo, or the OperatorHub CSV): set the secretGHCR_PUSH_TOKENto a classic PAT withwrite:packagesfrom a member ofpaperclipinc, and the variableGHCR_PUSH_USERto that login. Or:ghcr.io/stubbi: set the variableIMAGE_NAMESPACE=stubbiand, in the same release, changecharts/openclaw-operator/values.yamlimage.repository,hack/check-chart-image-repository.shEXPECTED, the bundle CSV image, andoperatorhub.yamlIMG. Then make the new packages public and re-register the chart repository on Artifact Hub, including the verified-publisher metadata artifact. The release preflight blocks a partial switch.🤖 Generated with Claude Code