end-to-end tests for https://codeberg.org/forgejo/forgejo/pulls/10647 Reviewed-on: https://code.forgejo.org/forgejo/end-to-end/pulls/1362 Co-authored-by: Mathieu Fenniak <mathieu@fenniak.net> Co-committed-by: Mathieu Fenniak <mathieu@fenniak.net>
53 lines
1.7 KiB
YAML
53 lines
1.7 KiB
YAML
on:
|
|
push:
|
|
|
|
jobs:
|
|
pre-job:
|
|
runs-on: docker
|
|
container:
|
|
image: data.forgejo.org/oci/node:22-bookworm
|
|
outputs:
|
|
dynamic: "${{ steps.dynamic-step.outputs.dynamic }}"
|
|
steps:
|
|
- id: dynamic-step
|
|
run: echo "dynamic=dynamic output" >> $FORGEJO_OUTPUT
|
|
|
|
layer-1:
|
|
needs: [pre-job]
|
|
uses: ./.forgejo/workflows/reusable-layer-1.yml
|
|
with:
|
|
input1: top-level-input1
|
|
input3: ${{ needs.pre-job.outputs.dynamic }}
|
|
secrets:
|
|
secret1: AAAA
|
|
secret2: BBBB1234
|
|
|
|
verify:
|
|
needs: [layer-1]
|
|
runs-on: docker
|
|
container:
|
|
image: data.forgejo.org/oci/node:22-bookworm
|
|
volumes:
|
|
- /srv/example:/srv/example
|
|
steps:
|
|
- name: verify test config secret
|
|
run: |
|
|
set -x
|
|
# SECRET3 is set on the repo, but not passed into `reusable-layer-1.yml` so that we can test secrets don't
|
|
# leak into the workflow if they're not explicitly defined. This check verifies that the test environment has
|
|
# that secret, otherwise the test assertions that it isn't present within the workflow would be meaningless.
|
|
test "CCCC" = "${{ secrets.secret3 }}"
|
|
- name: verify callee-[0-4] completed
|
|
run: |
|
|
set -x
|
|
test -f /srv/example/callee-1
|
|
test -f /srv/example/callee-2
|
|
test -f /srv/example/callee-3
|
|
test -f /srv/example/callee-4
|
|
- name: verify workflow outputs
|
|
run: |
|
|
set -x
|
|
test "callee-1-output" = "${{ needs.layer-1.outputs.output1 }}"
|
|
test "callee-2-output" = "${{ needs.layer-1.outputs.output2 }}"
|
|
test "callee-3-output" = "${{ needs.layer-1.outputs.output3 }}"
|
|
test "callee-4-output" = "${{ needs.layer-1.outputs.output4 }}"
|