diff --git a/.github/check-needs/action.yaml b/.github/check-needs/action.yaml new file mode 100644 index 0000000..5a50a27 --- /dev/null +++ b/.github/check-needs/action.yaml @@ -0,0 +1,29 @@ +name: Check needs +description: Checks required jobs to see if they all passed +inputs: + failed-dependencies: + description: pass in the following "{{ contains(needs.*.result, 'failure') }}" + required: true + +runs: + using: composite + steps: + - name: Test + run: | + echo FAILED_DEPENDENCY=${{ inputs.failed-dependencies }} + [[ ${{ inputs.failed-dependencies }} = true ]] && exit 1 || echo "Test executed" + shell: bash + - run: echo "success" + shell: bash + - name : machine echo job + env : { CONTENT : "${{ toJson(job) }}" } + run : "echo $CONTENT" + shell: bash + - name : machine echo env + env : { CONTENT : "${{ toJson(env) }}" } + run : "echo $CONTENT" + shell: bash + - name : machine echo github + env : { CONTENT : "${{ toJson(github) }}" } + run : "echo $CONTENT" + shell: bash diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 857ebf6..bcbc947 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -23,7 +23,7 @@ jobs: runs-on: ubuntu-latest steps: - run: echo "fail 3" -# - run: exit 1 + - run: exit 1 Test: @@ -43,3 +43,18 @@ jobs: env: FAILED_DEPENDENCY: ${{ contains(needs.*.result, 'failure') }} - run: echo "success" + + + Test2: + name: Test 2 + if: always() + runs-on: ubuntu-latest + needs: + - test-1 + - test-2 + - test-3 + steps: + - uses: actions/checkout@v3 + - uses: ./.github/check-needs + with: + failed-dependencies: ${{ contains(needs.*.result, 'failure') }}