Repository navigation
feat: provision fleet Actions secret and SOPS maintenance copy - #42
Merged
Merged
Conversation
Contributor
|
Fleet credential bootstrap completed without exposing plaintext.
The one-time bootstrap workflow removed itself from the branch. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Provision the nightly clients-fleet credential without placing plaintext in Git, pull-request text, logs, artifacts, or Linear.
One-time bootstrap
This internal same-repository PR starts a one-time encrypted handoff job. The runner publishes an ephemeral X25519 public key, accepts only an AES-GCM envelope bound to
zed-pkg/.github:ZED_FLEET_GH_TOKEN, and keeps the matching private key only for the lifetime of that job.After decrypting in memory, the job validates repository-administrator access and creates or updates these repository Actions secrets:
ZED_FLEET_GH_TOKENSOPS_AGE_KEYIt then creates
env/enc/prod.env.encthrough the pinnedORESoftware/ores-sopsconvention, verifies decrypt →env/dec/prod.env→ relative root.envsymlink behavior, locks plaintext, and removes the temporary bootstrap workflow and transport payload from the branch.Durable repository changes
env/enc, ignoredenv/dec, and managed.envsymlink policyores-sops, SOPS, age, Git, and justjust env-init|env-use|env-dec|env-enc|env-edit|env-refresh|env-status|env-verify|env-lock.env.exampleSecurity properties
Tracked under Linear issue DEN-3482.