Add custom commit message and commit signing support to deploy action#3432
Conversation
|
Hello, thanks for contributing for the first time! |
Agent-Logs-Url: https://github.com/plengauer/Thoth/sessions/338e27c1-82fb-4fb7-84cc-ca7131cf3a8e Co-authored-by: plengauer <100447901+plengauer@users.noreply.github.com>
Agent-Logs-Url: https://github.com/plengauer/Thoth/sessions/514c39e7-fe68-4444-97ee-1a1befc1d992 Co-authored-by: plengauer <100447901+plengauer@users.noreply.github.com>
Simplified in 7a0b56c. Replaced the two GPG inputs ( |
Agent-Logs-Url: https://github.com/plengauer/Thoth/sessions/76877a40-1dab-4f77-8501-f9f927745513 Co-authored-by: plengauer <100447901+plengauer@users.noreply.github.com>
Done in 2af099f. Both |
There was a problem hiding this comment.
Pull request overview
This PR enhances the actions/instrument/deploy composite action to support configurable deployment commit messages and optional commit signing, addressing org policies that require specific commit formats and/or signed commits.
Changes:
- Add a
commit_messageinput and use it for both the direct push and PR fallback commit messages (defaulting to the prior"deploy opentelemetry"for compatibility). - Add optional commit signing configuration via either
ssh_signing_key(SSH signing) orgpg_private_key(+ optionalgpg_passphrase) with early mutual-exclusion validation.
Organizations with branch rulesets requiring specific commit message formats or signed commits had no way to configure the deploy action's hardcoded
"deploy opentelemetry"commit message or enable commit signing.Changes
commit_messageinput — replaces hardcoded"deploy opentelemetry"in both the direct push and pull request fallback paths; defaults to the existing string for backward compatibilityssh_signing_keyinput — SSH private key for signing commits using git's built-in SSH signing support (available on all GitHub-hosted runners with git 2.34+); mutually exclusive withgpg_private_keygpg_private_keyinput — armored GPG private key for signing commits; mutually exclusive withssh_signing_keygpg_passphraseinput — optional passphrase for the GPG private key (only used whengpg_private_keyis set)ssh_signing_keyandgpg_private_keyare set at the same time~/.ssh/signing_key, setsgit config gpg.format sshandgit config user.signingkey, and enablescommit.gpgsigngpg-preset-passphrasefor non-interactive useOnly one of
ssh_signing_keyorgpg_private_keymay be set; setting both is an error.Usage