chore: add assertions for the forge context and use it instead of github where relevant (#748)

Refs forgejo/act#37

Reviewed-on: https://code.forgejo.org/forgejo/end-to-end/pulls/748
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: Earl Warren <contact@earl-warren.org>
Co-committed-by: Earl Warren <contact@earl-warren.org>
This commit is contained in:
Earl Warren 2025-07-06 12:15:38 +00:00 committed by earl-warren
parent 07b9318ff7
commit cd1a0f5076
No known key found for this signature in database
GPG key ID: F128CBE6AB3A7201
5 changed files with 27 additions and 8 deletions

View file

@ -21,6 +21,7 @@ jobs:
echo "$GITHUB_ACTION" | grep -E '^[0-9]+$'
test "$GITHUB_ACTION" = "${{ env.GITHUB_ACTION }}"
test "$GITHUB_ACTION" = "${{ github.ACTION }}"
test "$GITHUB_ACTION" = "${{ forge.ACTION }}"
# See also actions/example-local-action/.forgejo/local-action/action.yml
- name: GITHUB_ACTION_PATH
@ -29,6 +30,7 @@ jobs:
test -z "$GITHUB_ACTION_PATH"
test "$GITHUB_ACTION_PATH" = "${{ env.GITHUB_ACTION_PATH }}"
test "$GITHUB_ACTION_PATH" = "${{ github.ACTION_PATH }}"
test "$GITHUB_ACTION_PATH" = "${{ forge.ACTION_PATH }}"
- name: when running an action
if: ${{ env.GITHUB_ACTIONS }}
@ -54,6 +56,7 @@ jobs:
test "$GITHUB_ACTOR"
test "$GITHUB_ACTOR" = "${{ env.GITHUB_ACTOR }}"
test "$GITHUB_ACTOR" = "${{ github.ACTOR }}"
test "$GITHUB_ACTOR" = "${{ forge.ACTOR }}"
- name: GITHUB_API_URL
shell: bash
@ -62,6 +65,7 @@ jobs:
[[ "$GITHUB_API_URL" =~ /api/v1$ ]]
test "$GITHUB_API_URL" = "${{ env.GITHUB_API_URL }}"
test "$GITHUB_API_URL" = "${{ github.API_URL }}"
test "$GITHUB_API_URL" = "${{ forge.API_URL }}"
# See also actions/example-pull-request/.forgejo/workflows/test.yml
- name: GITHUB_BASE_REF
@ -70,6 +74,7 @@ jobs:
test -z "$GITHUB_BASE_REF"
test "$GITHUB_BASE_REF" = "${{ env.GITHUB_BASE_REF }}"
test "$GITHUB_BASE_REF" = "${{ github.BASE_REF }}"
test "$GITHUB_BASE_REF" = "${{ forge.BASE_REF }}"
# See also actions/example-pull-request/.forgejo/workflows/test.yml
- name: GITHUB_HEAD_REF
@ -78,6 +83,7 @@ jobs:
test -z "$GITHUB_HEAD_REF"
test "$GITHUB_HEAD_REF" = "${{ env.GITHUB_HEAD_REF }}"
test "$GITHUB_HEAD_REF" = "${{ github.HEAD_REF }}"
test "$GITHUB_HEAD_REF" = "${{ forge.HEAD_REF }}"
- name: GITHUB_ENV
run: |
@ -91,6 +97,7 @@ jobs:
test "$GITHUB_EVENT_NAME" = push
test "$GITHUB_EVENT_NAME" = "${{ env.GITHUB_EVENT_NAME }}"
test "$GITHUB_EVENT_NAME" = "${{ github.EVENT_NAME }}"
test "$GITHUB_EVENT_NAME" = "${{ forge.EVENT_NAME }}"
- name: GITHUB_JOB
run: |
@ -98,6 +105,7 @@ jobs:
test "$GITHUB_JOB" = test
test "$GITHUB_JOB" = "${{ env.GITHUB_JOB }}"
test "$GITHUB_JOB" = "${{ github.JOB }}"
test "$GITHUB_JOB" = "${{ forge.JOB }}"
- name: GITHUB_OUTPUT
run: |
@ -118,6 +126,7 @@ jobs:
[[ "$GITHUB_REF" =~ ^refs/ ]]
test "$GITHUB_REF" = "${{ env.GITHUB_REF }}"
test "$GITHUB_REF" = "${{ github.REF }}"
test "$GITHUB_REF" = "${{ forge.REF }}"
- name: GITHUB_REF_NAME
shell: bash
@ -126,6 +135,7 @@ jobs:
! [[ "$GITHUB_REF_NAME" =~ ^refs/ ]]
test "$GITHUB_REF_NAME" = "${{ env.GITHUB_REF_NAME }}"
test "$GITHUB_REF_NAME" = "${{ github.REF_NAME }}"
test "$GITHUB_REF_NAME" = "${{ forge.REF_NAME }}"
- name: GITHUB_REPOSITORY
run: |
@ -133,6 +143,7 @@ jobs:
test "$GITHUB_REPOSITORY" = root/example-context
test "$GITHUB_REPOSITORY" = "${{ env.GITHUB_REPOSITORY }}"
test "$GITHUB_REPOSITORY" = "${{ github.REPOSITORY }}"
test "$GITHUB_REPOSITORY" = "${{ forge.REPOSITORY }}"
- name: GITHUB_REPOSITORY_OWNER
run: |
@ -140,6 +151,7 @@ jobs:
test "$GITHUB_REPOSITORY_OWNER" = root
test "$GITHUB_REPOSITORY_OWNER" = "${{ env.GITHUB_REPOSITORY_OWNER }}"
test "$GITHUB_REPOSITORY_OWNER" = "${{ github.REPOSITORY_OWNER }}"
test "$GITHUB_REPOSITORY_OWNER" = "${{ forge.REPOSITORY_OWNER }}"
- name: GITHUB_RUN_NUMBER
run: |
@ -147,6 +159,7 @@ jobs:
echo "$GITHUB_RUN_NUMBER" | grep -E '^[0-9]+$'
test "$GITHUB_RUN_NUMBER" = "${{ env.GITHUB_RUN_NUMBER }}"
test "$GITHUB_RUN_NUMBER" = "${{ github.RUN_NUMBER }}"
test "$GITHUB_RUN_NUMBER" = "${{ forge.RUN_NUMBER }}"
- name: GITHUB_SERVER_URL
shell: bash
@ -155,6 +168,7 @@ jobs:
[[ "$GITHUB_SERVER_URL" =~ ^http ]]
test "$GITHUB_SERVER_URL" = "${{ env.GITHUB_SERVER_URL }}"
test "$GITHUB_SERVER_URL" = "${{ github.SERVER_URL }}"
test "$GITHUB_SERVER_URL" = "${{ forge.SERVER_URL }}"
- name: GITHUB_SHA
run: |
@ -162,6 +176,7 @@ jobs:
test "$GITHUB_SHA"
test "$GITHUB_SHA" = "${{ env.GITHUB_SHA }}"
test "$GITHUB_SHA" = "${{ github.SHA }}"
test "$GITHUB_SHA" = "${{ forge.SHA }}"
- name: GITHUB_STEP_SUMMARY
run: |
@ -176,6 +191,7 @@ jobs:
test "$GITHUB_TOKEN"
test "$GITHUB_TOKEN" = "${{ env.GITHUB_TOKEN }}"
test "$GITHUB_TOKEN" = "${{ github.TOKEN }}"
test "$GITHUB_TOKEN" = "${{ forge.TOKEN }}"
- name: GITHUB_WORKSPACE
run: |
@ -183,6 +199,7 @@ jobs:
test -d "$GITHUB_WORKSPACE"
test "$GITHUB_WORKSPACE" = "${{ env.GITHUB_WORKSPACE }}"
test "$GITHUB_WORKSPACE" = "${{ github.WORKSPACE }}"
test "$GITHUB_WORKSPACE" = "${{ forge.WORKSPACE }}"
- name: RUNNER_ARCH
run: |

View file

@ -12,6 +12,7 @@ runs:
test "$GITHUB_ACTION_REPOSITORY" = root/action-for-context
test "$GITHUB_ACTION_REPOSITORY" = "${{ env.GITHUB_ACTION_REPOSITORY }}"
test "$GITHUB_ACTION_REPOSITORY" = "${{ github.ACTION_REPOSITORY }}"
test "$GITHUB_ACTION_REPOSITORY" = "${{ forge.ACTION_REPOSITORY }}"
touch /srv/example/example-context/GITHUB_ACTION_REPOSITORY
- name: GITHUB_ACTION_PATH
@ -20,4 +21,5 @@ runs:
set -x
[[ "$GITHUB_ACTION_PATH" =~ action-for-context@main$ ]]
test "$GITHUB_ACTION_PATH" = "${{ github.ACTION_PATH }}"
test "$GITHUB_ACTION_PATH" = "${{ forge.ACTION_PATH }}"
touch /srv/example/example-context/GITHUB_ACTION_PATH