-
Notifications
You must be signed in to change notification settings - Fork 29
Open
Labels
good first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is needed
Description
Hi,
I have this GHA causing me grief... for brevity, the pieces that I believe matter.
The problem does not happen when I run locally with the same version of tofu and terragrunt (of course).
env:
tofu_version: 1.8.5
tg_version: 0.69.1
I install the tofu action with the latest version.
- name: Setup Tofu with specified version on the runner
uses: opentofu/setup-opentofu@v1
with:
tofu_version: ${{ env.tofu_version }}
yields success with
with:
tofu_version: 1.8.5
cli_config_credentials_hostname: app.terraform.io
tofu_wrapper: true
Below, if it returns 2, meaning a change, I want to capture that to apply later, for example.
- name: TG plan
id: plan
if: matrix.folder != 'app_accounts'
run: |
cd ${{ github.workspace }}/infra/${{ matrix.folder }}
terragrunt plan --terragrunt-non-interactive \
-detailed-exitcode \
-compact-warnings \
|| PLAN_STATUS=$? # we want to continue even if the plan fails to detect changes
[[ -z "$PLAN_STATUS" ]] && PLAN_STATUS=0
echo "exit code for tofu plan is actually: $PLAN_STATUS"
echo "plan_status=$PLAN_STATUS" >> $GITHUB_OUTPUT
[[ $PLAN_STATUS -eq 2 ]] && exit 0 || exit $PLAN_STATUS
The exit code will always be 0 if run with tofu.
However, In that same GHA and all else being equals, if I just comment out the setup-opentofu stanza, terragrunt is forced to use terraform instead. And then, it works as expected.

Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
good first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is needed