Summary
Lock files compiled by gh aw compile (tested with v0.56.2 and v0.63.1) contain two GHES compatibility issues:
1. GH_HOST hardcoded to github.com
The Copilot CLI install step hardcodes GH_HOST=github.com:
- name: Install Copilot CLI
env:
GH_HOST: github.com
run: ${RUNNER_TEMP}/gh-aw/actions/install_copilot_cli.sh latest
This defeats GHES/GHEC compatibility. It should derive GH_HOST from github.server_url.
2. ghes-host-config step output is never used
The compiled workflow includes a ghes-host-config step that writes GH_HOST to $GITHUB_OUTPUT, but no later step references this output, making it a no-op:
- name: GHES host config
id: ghes-host-config
run: |
...
echo "GH_HOST=${GH_HOST}" >> "$GITHUB_OUTPUT"
The output should either be written to $GITHUB_ENV so subsequent steps can use it, or the output should be explicitly referenced by the steps that need it.
Reproduction
gh aw compile # any workflow with pull_request_target trigger
grep -n 'GH_HOST.*github.com' .github/workflows/*.lock.yml
grep -A5 'ghes-host-config' .github/workflows/*.lock.yml
Environment
- gh-aw v0.63.1
- Also present in v0.56.2
Summary
Lock files compiled by
gh aw compile(tested with v0.56.2 and v0.63.1) contain two GHES compatibility issues:1.
GH_HOSThardcoded togithub.comThe Copilot CLI install step hardcodes
GH_HOST=github.com:This defeats GHES/GHEC compatibility. It should derive
GH_HOSTfromgithub.server_url.2.
ghes-host-configstep output is never usedThe compiled workflow includes a
ghes-host-configstep that writesGH_HOSTto$GITHUB_OUTPUT, but no later step references this output, making it a no-op:The output should either be written to
$GITHUB_ENVso subsequent steps can use it, or the output should be explicitly referenced by the steps that need it.Reproduction
Environment