Properly deal with contexts at various levels

memorize https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability
This commit is contained in:
Jacob Heider 2023-01-05 19:05:18 -05:00 committed by Jacob Heider
parent 2af6b64253
commit a22f2bb6e5
2 changed files with 9 additions and 3 deletions

View file

@ -121,6 +121,8 @@ jobs:
name: darwin+aarch64 name: darwin+aarch64
- os: [self-hosted, linux, ARM64] - os: [self-hosted, linux, ARM64]
name: linux+aarch64 name: linux+aarch64
outputs:
HAS_SECRETS: ${{ secrets.AWS_S3_CACHE != '' }}
container: ${{ matrix.platform.container }} container: ${{ matrix.platform.container }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
@ -156,7 +158,7 @@ jobs:
stage: stage:
needs: [test] needs: [test]
# this only works for PRs from our team to our repo (security! :( ) # this only works for PRs from our team to our repo (security! :( )
if: startsWith(github.ref, 'refs/pull/') && startsWith(github.repository, 'teaxyz/pantry.') && secrets.AWS_S3_CACHE != '' if: startsWith(github.ref, 'refs/pull/') && startsWith(github.repository, 'teaxyz/pantry.') && needs.test.outputs.HAS_SECRETS
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
matrix: matrix:

View file

@ -7,6 +7,8 @@ on:
jobs: jobs:
cd: cd:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs:
HAS_SECRETS: ${{ secrets.AWS_S3_CACHE != '' }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- run: > - run: >
@ -16,13 +18,15 @@ jobs:
curl https://app.tea.xyz/api/receiveWatcherProjects --fail -X PUT \ curl https://app.tea.xyz/api/receiveWatcherProjects --fail -X PUT \
-H "content-type: application/json" -H "authorization: bearer ${{ secrets.TEA_API_TOKEN }}" -d @- -H "content-type: application/json" -H "authorization: bearer ${{ secrets.TEA_API_TOKEN }}" -d @-
bottle-pr: bottle-pr:
needs: [cd]
#FIXME: will fail (harmlessly) on non-merge/non-new-version runs, and won't work on 3rd-party PRs #FIXME: will fail (harmlessly) on non-merge/non-new-version runs, and won't work on 3rd-party PRs
if: ${{ secrets.AWS_S3_CACHE != '' }} if: needs.cd.outputs.HAS_SECRETS
uses: ./.github/workflows/bottle.yml uses: ./.github/workflows/bottle.yml
secrets: inherit secrets: inherit
bottle-standalone: bottle-standalone:
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: ${{ secrets.AWS_S3_CACHE == '' }} needs: [cd]
if: ! needs.cd.outputs.HAS_SECRETS
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- uses: technote-space/get-diff-action@v6 - uses: technote-space/get-diff-action@v6