FSKY Foundry is now Gitfield. All users, organizations, repos, and other things remain. Update your remote URLs, container image tags, and logins from foundry.fsky.io to gitfield.org.
check accepts overlapping deploy destinations, including the same path for cert and key. Deployment writes the certificate first with mode 0644; when the key is written to that existing path, it inherits that mode. I reproduced this with check and apply: the configured path ended up mode 0644 and contained a parseable private key. A pre-existing world-readable key target also carries its mode forward.
Relevant code: internal/config/validate.go deploy validation; internal/deploy/deploy.go material order and installFile mode selection (deploy.go:152-169,242-265).
Please reject colliding output paths and ensure key/key-der outputs cannot inherit a mode that makes the private key accessible beyond the intended principals. If insecure explicit modes remain configurable, validate or warn clearly rather than silently producing a public key file.
Acceptance: a config with duplicate cert/key destinations fails validation; tests cover changed and pre-existing key destinations with permissive modes; no ordinary deployment path writes private key material world-readable.
`check` accepts overlapping deploy destinations, including the same path for `cert` and `key`. Deployment writes the certificate first with mode `0644`; when the key is written to that existing path, it inherits that mode. I reproduced this with `check` and `apply`: the configured path ended up mode `0644` and contained a parseable private key. A pre-existing world-readable key target also carries its mode forward.
Relevant code: `internal/config/validate.go` deploy validation; `internal/deploy/deploy.go` material order and `installFile` mode selection (`deploy.go:152-169,242-265`).
Please reject colliding output paths and ensure key/key-der outputs cannot inherit a mode that makes the private key accessible beyond the intended principals. If insecure explicit modes remain configurable, validate or warn clearly rather than silently producing a public key file.
Acceptance: a config with duplicate cert/key destinations fails validation; tests cover changed and pre-existing key destinations with permissive modes; no ordinary deployment path writes private key material world-readable.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
checkaccepts overlapping deploy destinations, including the same path forcertandkey. Deployment writes the certificate first with mode0644; when the key is written to that existing path, it inherits that mode. I reproduced this withcheckandapply: the configured path ended up mode0644and contained a parseable private key. A pre-existing world-readable key target also carries its mode forward.Relevant code:
internal/config/validate.godeploy validation;internal/deploy/deploy.gomaterial order andinstallFilemode selection (deploy.go:152-169,242-265).Please reject colliding output paths and ensure key/key-der outputs cannot inherit a mode that makes the private key accessible beyond the intended principals. If insecure explicit modes remain configurable, validate or warn clearly rather than silently producing a public key file.
Acceptance: a config with duplicate cert/key destinations fails validation; tests cover changed and pre-existing key destinations with permissive modes; no ordinary deployment path writes private key material world-readable.