The Forgejo/GitHub Actions runner only redacts values it has been explicitly told about. Secrets exported via $GITHUB_ENV in setup_dagger_remote.sh were never registered, so they could appear in plain text in CI log output.
Added ::add-mask:: calls for every secret exported by export_secret(), and for the two inline variables DAGGER_SSH_KEY and DAGGER_ENGINE_HOST that bypass that function.
Multiline values (e.g. SSH private keys, JSON key files) are masked line-by-line, since ::add-mask:: covers a single line at a time.
Test plan
Trigger a workflow_dispatch run of deploy.yml and confirm no secret values appear in plain text in the "Setup Dagger Remote Engine" step or any subsequent steps.
Confirm the existing [secrets] exported NAME (N chars) log lines still appear (they log only the name and length, not the value).
## Summary
- The Forgejo/GitHub Actions runner only redacts values it has been explicitly told about. Secrets exported via `$GITHUB_ENV` in `setup_dagger_remote.sh` were never registered, so they could appear in plain text in CI log output.
- Added `::add-mask::` calls for every secret exported by `export_secret()`, and for the two inline variables `DAGGER_SSH_KEY` and `DAGGER_ENGINE_HOST` that bypass that function.
- Multiline values (e.g. SSH private keys, JSON key files) are masked line-by-line, since `::add-mask::` covers a single line at a time.
## Test plan
- [ ] Trigger a `workflow_dispatch` run of `deploy.yml` and confirm no secret values appear in plain text in the "Setup Dagger Remote Engine" step or any subsequent steps.
- [ ] Confirm the existing `[secrets] exported NAME (N chars)` log lines still appear (they log only the name and length, not the value).
Closes #434
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.
Summary
$GITHUB_ENVinsetup_dagger_remote.shwere never registered, so they could appear in plain text in CI log output.::add-mask::calls for every secret exported byexport_secret(), and for the two inline variablesDAGGER_SSH_KEYandDAGGER_ENGINE_HOSTthat bypass that function.::add-mask::covers a single line at a time.Test plan
workflow_dispatchrun ofdeploy.ymland confirm no secret values appear in plain text in the "Setup Dagger Remote Engine" step or any subsequent steps.[secrets] exported NAME (N chars)log lines still appear (they log only the name and length, not the value).Closes #434