feat: restore template vars for GitHub App customization #1

Merged
jakeclaw-ai[bot] merged 4 commits from feat/restore-template-vars into main 2026-03-15 11:23:09 +00:00
jakeclaw-ai[bot] commented 2026-03-15 11:19:21 +00:00 (Migrated from github.com)

Summary

Restores template variable support for the release workflow, allowing consumers to override GitHub App credentials via template-vars.

All three upstream blockers are now resolved:

Requires common-repo ≥ 0.28.4.

Template Variables

Variable Default Purpose
GH_APP_ID_VAR CHRISTMAS_ISLAND_APP_ID GitHub vars name for app ID
GH_APP_KEY_SECRET CHRISTMAS_ISLAND_PRIVATE_KEY GitHub secrets name for app key
GH_APP_OWNER christmas-island GitHub App installation owner

Consumer Override Example

- repo:
    url: https://github.com/christmas-island/cr-semantic-release
    ref: v2.0.0
    with:
      - template-vars:
          GH_APP_ID_VAR: MY_APP_ID
          GH_APP_KEY_SECRET: MY_APP_KEY
          GH_APP_OWNER: my-org

Testing

Verified with common-repo 0.28.4:

  • Default (no overrides): renders ${{ vars.CHRISTMAS_ISLAND_APP_ID }}
  • Consumer overrides: renders ${{ vars.MY_CUSTOM_APP_ID }}
  • ${{ }} expressions preserved untouched
  • CI sync check updated to skip release.yaml (intentional template vs hardcoded difference)
## Summary Restores template variable support for the release workflow, allowing consumers to override GitHub App credentials via `template-vars`. All three upstream blockers are now resolved: - **common-repo/common-repo#235**: source-declared template-vars passthrough (0.28.0) - **common-repo/common-repo#239**: `${{ }}` GHA expression collision fix (0.28.3) - **common-repo/common-repo#249**: consumer override cache key fix (0.28.4) Requires **common-repo ≥ 0.28.4**. ## Template Variables | Variable | Default | Purpose | |---|---|---| | `GH_APP_ID_VAR` | `CHRISTMAS_ISLAND_APP_ID` | GitHub vars name for app ID | | `GH_APP_KEY_SECRET` | `CHRISTMAS_ISLAND_PRIVATE_KEY` | GitHub secrets name for app key | | `GH_APP_OWNER` | `christmas-island` | GitHub App installation owner | ## Consumer Override Example ```yaml - repo: url: https://github.com/christmas-island/cr-semantic-release ref: v2.0.0 with: - template-vars: GH_APP_ID_VAR: MY_APP_ID GH_APP_KEY_SECRET: MY_APP_KEY GH_APP_OWNER: my-org ``` ## Testing Verified with common-repo 0.28.4: - ✅ Default (no overrides): renders `${{ vars.CHRISTMAS_ISLAND_APP_ID }}` - ✅ Consumer overrides: renders `${{ vars.MY_CUSTOM_APP_ID }}` - ✅ `${{ }}` expressions preserved untouched - ✅ CI sync check updated to skip release.yaml (intentional template vs hardcoded difference)
Sign in to join this conversation.