diff --git a/.github/workflows/build-submit-android.yml b/.github/workflows/build-submit-android.yml index 595cfa74d2..e76eacbc22 100644 --- a/.github/workflows/build-submit-android.yml +++ b/.github/workflows/build-submit-android.yml @@ -79,13 +79,15 @@ jobs: echo "$json" > google-services.json - name: 🏗️ EAS Build + env: + PROFILE: ${{ inputs.profile || 'testflight-android' }} run: > SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }} SENTRY_RELEASE=${{ steps.env.outputs.EXPO_PUBLIC_RELEASE_VERSION }} SENTRY_DIST=${{ steps.env.outputs.EXPO_PUBLIC_BUNDLE_IDENTIFIER }} yarn use-build-number-with-bump eas build -p android - --profile ${{ inputs.profile || 'testflight-android' }} + --profile $PROFILE --local --output build.aab --non-interactive - name: ✍️ Rename Testflight bundle @@ -194,4 +196,6 @@ jobs: - name: ✏️ Write commit hash to cache if: ${{ inputs.profile == 'testflight-android' }} - run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + env: + GITHUB_SHA: ${{ github.sha }} + run: echo $GITHUB_SHA > most-recent-testflight-commit.txt diff --git a/.github/workflows/build-submit-ios.yml b/.github/workflows/build-submit-ios.yml index 24eba2489f..391f95131f 100644 --- a/.github/workflows/build-submit-ios.yml +++ b/.github/workflows/build-submit-ios.yml @@ -91,13 +91,15 @@ jobs: echo "${{ secrets.GOOGLE_SERVICES_TOKEN }}" > google-services.json - name: 🏗️ EAS Build + env: + PROFILE: ${{ inputs.profile || 'testflight' }} run: > SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }} SENTRY_RELEASE=${{ steps.env.outputs.EXPO_PUBLIC_RELEASE_VERSION }} SENTRY_DIST=${{ steps.env.outputs.EXPO_PUBLIC_BUNDLE_IDENTIFIER }} yarn use-build-number-with-bump eas build -p ios - --profile ${{ inputs.profile || 'testflight' }} + --profile $PROFILE --local --output build.tar.gz --non-interactive - name: 📂 Extract build artifact @@ -147,5 +149,7 @@ jobs: key: most-recent-testflight-commit - name: ✏️ Write commit hash to cache + env: + GITHUB_SHA: ${{ github.sha }} if: ${{ inputs.profile == 'testflight' }} - run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + run: echo $GITHUB_SHA > most-recent-testflight-commit.txt diff --git a/.github/workflows/bundle-deploy-eas-update.yml b/.github/workflows/bundle-deploy-eas-update.yml index 3204c7bb81..af629dd559 100644 --- a/.github/workflows/bundle-deploy-eas-update.yml +++ b/.github/workflows/bundle-deploy-eas-update.yml @@ -39,10 +39,12 @@ jobs: # Validate the version if one is supplied. This should generally happen if the update is for a production client - name: 🧐 Validate version + env: + RUNTIME_VERSION: ${{ inputs.runtimeVersion }} if: ${{ inputs.runtimeVersion }} run: | - if [ -z "${{ inputs.runtimeVersion }}" ]; then - [[ "${{ inputs.runtimeVersion }}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] && echo "Version is valid" || exit 1 + if [ -z "$RUNTIME_VERSION" ]; then + [[ "$RUNTIME_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] && echo "Version is valid" || exit 1 fi - name: ⬇️ Checkout @@ -103,12 +105,15 @@ jobs: # eas.json not used here, set EXPO_PUBLIC_ENV - name: Env + env: + CHANNEL: ${{ inputs.channel || 'testflight' }} + GITHUB_SHA: ${{ github.sha }} id: env if: ${{ !steps.fingerprint.outputs.includes-changes }} run: | export json='${{ secrets.GOOGLE_SERVICES_TOKEN }}' echo "${{ secrets.ENV_TOKEN }}" > .env - echo "EXPO_PUBLIC_ENV=${{ inputs.channel || 'testflight' }}" >> .env + echo "EXPO_PUBLIC_ENV=$CHANNEL" >> .env echo "EXPO_PUBLIC_RELEASE_VERSION=$(jq -r '.version' package.json)" >> .env echo "EXPO_PUBLIC_RELEASE_VERSION=$(jq -r '.version' package.json)" >> $GITHUB_OUTPUT echo "EXPO_PUBLIC_BUNDLE_IDENTIFIER=$(git rev-parse HEAD)" >> .env @@ -145,7 +150,7 @@ jobs: - name: ✏️ Write commit hash to cache if: ${{ !steps.fingerprint.outputs.includes-changes }} - run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + run: echo $GITHUB_SHA > most-recent-testflight-commit.txt # GitHub actions are horrible so let's just copy paste this in buildIfNecessaryIOS: @@ -249,7 +254,9 @@ jobs: - name: ✏️ Write commit hash to cache if: ${{ inputs.channel == 'testflight' }} - run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + env: + GITHUB_SHA: ${{ github.sha }} + run: echo $GITHUB_SHA > most-recent-testflight-commit.txt buildIfNecessaryAndroid: name: Build and Submit Android @@ -363,5 +370,7 @@ jobs: key: most-recent-testflight-commit - name: ✏️ Write commit hash to cache + env: + GITHUB_SHA: ${{ github.sha }} if: ${{ inputs.channel != 'testflight' && inputs.channel != 'production' }} - run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + run: echo $GITHUB_SHA > most-recent-testflight-commit.txt diff --git a/.github/workflows/pull-request-comment.yml b/.github/workflows/pull-request-comment.yml index 9fde88ad30..5668854f0a 100644 --- a/.github/workflows/pull-request-comment.yml +++ b/.github/workflows/pull-request-comment.yml @@ -32,7 +32,7 @@ jobs: fi - if [[ "${{ github.event.comment.body }}" == *"ota"* ]]; then + if [[ "$COMMENT" == *"ota"* ]]; then has_ota=true else has_ota=false @@ -75,6 +75,8 @@ jobs: steps: - name: Get PR HEAD SHA + env: + ISSUE_NUMBER: ${{ github.event.issue.number }} id: pr-info uses: actions/github-script@v7 with: @@ -82,7 +84,7 @@ jobs: const pr = await github.rest.pulls.get({ owner: context.repo.owner, repo: context.repo.repo, - pull_number: ${{ github.event.issue.number }} + pull_number: process.env.ISSUE_NUMBER, }); console.log(`PR HEAD SHA: ${pr.data.head.sha}`); @@ -184,13 +186,15 @@ jobs: - name: 💬 Drop a comment uses: marocchino/sticky-pull-request-comment@v2 + env: + ISSUE_NUMBER: ${{ github.event.issue.number }} with: header: pull-request-eas-build-${{ steps.pr-info.outputs.head-sha }} number: ${{ github.event.issue.number }} message: | Your requested OTA deployment was successful! You may now apply it by either scanning the QR code or opening the deep link below in your browser: - + `bluesky://intent/apply-ota?channel=pull-request-${{ github.event.issue.number }}` --- diff --git a/.github/workflows/pull-request-commit.yml b/.github/workflows/pull-request-commit.yml index bca92d4701..6e575148e3 100644 --- a/.github/workflows/pull-request-commit.yml +++ b/.github/workflows/pull-request-commit.yml @@ -35,20 +35,27 @@ jobs: cache: yarn - name: Ensure tracking relevant branches and checkout base + env: + HEAD_REF: ${{ github.head_ref }} + BASE_REF: ${{ github.base_ref }} run: | - git checkout ${{ github.head_ref }} - git checkout ${{ github.base_ref }} + git checkout $HEAD_REF + git checkout $BASE_REF - name: Get the base commit id: base-commit - run: echo base-commit=$(git log -n 1 ${{ github.base_ref }} --pretty=format:'%H') >> "$GITHUB_OUTPUT" + env: + BASE_REF: ${{ github.base_ref }} + run: echo base-commit=$(git log -n 1 $BASE_REF --pretty=format:'%H') >> "$GITHUB_OUTPUT" - name: Merge PR commit + env: + HEAD_REF: ${{ github.head_ref }} run: | # Have to set a git config for the merge to work git config --global user.email "github-actions[bot]@users.noreply.github.com" git config --global user.name "github-actions[bot]" - git merge --no-edit ${{ github.head_ref }} + git merge --no-edit $HEAD_REF yarn install yarn intl:build diff --git a/.github/workflows/verify-yarn-lock.yml b/.github/workflows/verify-yarn-lock.yml index afa554c59a..6eadf7be76 100644 --- a/.github/workflows/verify-yarn-lock.yml +++ b/.github/workflows/verify-yarn-lock.yml @@ -17,7 +17,9 @@ jobs: fetch-depth: 0 - name: Fetch base branch - run: git fetch origin ${{ github.base_ref }} --depth=1 + env: + BASE_REF: ${{ github.base_ref }} + run: git fetch origin $BASE_REF --depth=1 - name: Install node uses: actions/setup-node@v6 @@ -25,7 +27,9 @@ jobs: node-version-file: .nvmrc - name: Reset yarn.lock to base - run: git show "origin/${{ github.base_ref }}:yarn.lock" > yarn.lock + env: + BASE_REF: ${{ github.base_ref }} + run: git show "origin/$BASE_REF:yarn.lock" > yarn.lock - name: Yarn install uses: Wandalen/wretry.action@master