Bluesky app fork with some witchin' additions 💫

Use `macos-26-xlarge` runner, update actions to resolve caching issues (#9411)

* use xlarge runner for macos build

* try and fix yarn cache

* update actions/cache for pods step

* use expo github action main rather than v8

* update all actions to the same

* use yarn cache where missing

authored by samuel.fm and committed by

GitHub 31fac4a6 13c4ef83

+55 -52
+1 -1
.github/workflows/build-and-push-bskyweb-aws.yaml
··· 22 23 steps: 24 - name: Checkout repository 25 - uses: actions/checkout@v3 26 27 - name: Setup Docker buildx 28 uses: docker/setup-buildx-action@v1
··· 22 23 steps: 24 - name: Checkout repository 25 + uses: actions/checkout@v4 26 27 - name: Setup Docker buildx 28 uses: docker/setup-buildx-action@v1
+1 -1
.github/workflows/build-and-push-bskyweb-ghcr.yaml
··· 23 24 steps: 25 - name: Checkout repository 26 - uses: actions/checkout@v3 27 28 - name: Setup Docker buildx 29 uses: docker/setup-buildx-action@v1
··· 23 24 steps: 25 - name: Checkout repository 26 + uses: actions/checkout@v4 27 28 - name: Setup Docker buildx 29 uses: docker/setup-buildx-action@v1
+1 -1
.github/workflows/build-and-push-embedr-aws.yaml
··· 22 23 steps: 24 - name: Checkout repository 25 - uses: actions/checkout@v3 26 27 - name: Setup Docker buildx 28 uses: docker/setup-buildx-action@v1
··· 22 23 steps: 24 - name: Checkout repository 25 + uses: actions/checkout@v4 26 27 - name: Setup Docker buildx 28 uses: docker/setup-buildx-action@v1
+4 -4
.github/workflows/build-and-push-ogcard-aws.yaml
··· 3 workflow_dispatch: 4 pull_request: 5 paths: 6 - - 'bskyogcard/**' 7 - - 'Dockerfile.bskyogcard' 8 - - '.github/workflows/build-and-push-ogcard-aws.yaml' 9 10 env: 11 REGISTRY: ${{ secrets.AWS_ECR_REGISTRY_USEAST2_PACKAGES_REGISTRY }} ··· 24 25 steps: 26 - name: Checkout repository 27 - uses: actions/checkout@v3 28 29 - name: Setup Docker buildx 30 uses: docker/setup-buildx-action@v1
··· 3 workflow_dispatch: 4 pull_request: 5 paths: 6 + - "bskyogcard/**" 7 + - "Dockerfile.bskyogcard" 8 + - ".github/workflows/build-and-push-ogcard-aws.yaml" 9 10 env: 11 REGISTRY: ${{ secrets.AWS_ECR_REGISTRY_USEAST2_PACKAGES_REGISTRY }} ··· 24 25 steps: 26 - name: Checkout repository 27 + uses: actions/checkout@v4 28 29 - name: Setup Docker buildx 30 uses: docker/setup-buildx-action@v1
+3 -3
.github/workflows/build-submit-android.yml
··· 30 fetch-depth: 5 31 32 - name: 🔧 Setup Node 33 - uses: actions/setup-node@v4 34 with: 35 node-version-file: .nvmrc 36 cache: yarn ··· 39 uses: dcarbone/install-jq-action@v2 40 41 - name: 🔨 Setup EAS 42 - uses: expo/expo-github-action@v8 43 with: 44 expo-version: latest 45 eas-version: latest ··· 54 java-version: "17" 55 56 - name: ⚙️ Install dependencies 57 - run: yarn install 58 59 - name: 🔤 Compile translations 60 run: yarn intl:build 2>&1 | tee i18n.log
··· 30 fetch-depth: 5 31 32 - name: 🔧 Setup Node 33 + uses: actions/setup-node@v6 34 with: 35 node-version-file: .nvmrc 36 cache: yarn ··· 39 uses: dcarbone/install-jq-action@v2 40 41 - name: 🔨 Setup EAS 42 + uses: expo/expo-github-action@main 43 with: 44 expo-version: latest 45 eas-version: latest ··· 54 java-version: "17" 55 56 - name: ⚙️ Install dependencies 57 + run: yarn install --frozen-lockfile 58 59 - name: 🔤 Compile translations 60 run: yarn intl:build 2>&1 | tee i18n.log
+5 -5
.github/workflows/build-submit-ios.yml
··· 15 build: 16 if: github.repository == 'bluesky-social/social-app' 17 name: Build and Submit iOS 18 - runs-on: macos-26 19 steps: 20 - name: Check for EXPO_TOKEN 21 run: > ··· 30 fetch-depth: 5 31 32 - name: 🔧 Setup Node 33 - uses: actions/setup-node@v4 34 with: 35 node-version-file: .nvmrc 36 cache: yarn ··· 39 uses: dcarbone/install-jq-action@v2 40 41 - name: 🔨 Setup EAS 42 - uses: expo/expo-github-action@v8 43 with: 44 expo-version: latest 45 eas-version: latest ··· 49 run: yarn global add eas-cli-local-build-plugin 50 51 - name: ⚙️ Install dependencies 52 - run: yarn install 53 54 - uses: maxim-lobanov/setup-xcode@v1 55 with: ··· 61 version: 1.16.2 62 63 - name: 💾 Cache Pods 64 - uses: actions/cache@v3 65 id: pods-cache 66 with: 67 path: ./ios/Pods
··· 15 build: 16 if: github.repository == 'bluesky-social/social-app' 17 name: Build and Submit iOS 18 + runs-on: macos-26-xlarge 19 steps: 20 - name: Check for EXPO_TOKEN 21 run: > ··· 30 fetch-depth: 5 31 32 - name: 🔧 Setup Node 33 + uses: actions/setup-node@v6 34 with: 35 node-version-file: .nvmrc 36 cache: yarn ··· 39 uses: dcarbone/install-jq-action@v2 40 41 - name: 🔨 Setup EAS 42 + uses: expo/expo-github-action@main 43 with: 44 expo-version: latest 45 eas-version: latest ··· 49 run: yarn global add eas-cli-local-build-plugin 50 51 - name: ⚙️ Install dependencies 52 + run: yarn install --frozen-lockfile 53 54 - uses: maxim-lobanov/setup-xcode@v1 55 with: ··· 61 version: 1.16.2 62 63 - name: 💾 Cache Pods 64 + uses: actions/cache@v4 65 id: pods-cache 66 with: 67 path: ./ios/Pods
+9 -9
.github/workflows/bundle-deploy-eas-update.yml
··· 55 run: git fetch origin main:main --depth 100 56 57 - name: 🔧 Setup Node 58 - uses: actions/setup-node@v4 59 with: 60 node-version-file: .nvmrc 61 cache: yarn ··· 86 run: yarn typecheck 87 88 - name: 🔨 Setup EAS 89 - uses: expo/expo-github-action@v8 90 if: ${{ !steps.fingerprint.outputs.includes-changes }} 91 with: 92 expo-version: latest ··· 172 fetch-depth: 5 173 174 - name: 🔧 Setup Node 175 - uses: actions/setup-node@v4 176 with: 177 node-version-file: .nvmrc 178 cache: yarn 179 180 - name: 🔨 Setup EAS 181 - uses: expo/expo-github-action@v8 182 with: 183 expo-version: latest 184 eas-version: latest ··· 188 run: yarn global add eas-cli-local-build-plugin 189 190 - name: ⚙️ Install dependencies 191 - run: yarn install 192 193 - uses: maxim-lobanov/setup-xcode@v1 194 with: ··· 200 version: 1.16.2 201 202 - name: 💾 Cache Pods 203 - uses: actions/cache@v3 204 id: pods-cache 205 with: 206 path: ./ios/Pods ··· 276 fetch-depth: 5 277 278 - name: 🔧 Setup Node 279 - uses: actions/setup-node@v4 280 with: 281 node-version-file: .nvmrc 282 cache: yarn 283 284 - name: 🔨 Setup EAS 285 - uses: expo/expo-github-action@v8 286 with: 287 expo-version: latest 288 eas-version: latest ··· 297 java-version: "17" 298 299 - name: ⚙️ Install dependencies 300 - run: yarn install 301 302 - name: 🔤 Compile translations 303 run: yarn intl:build
··· 55 run: git fetch origin main:main --depth 100 56 57 - name: 🔧 Setup Node 58 + uses: actions/setup-node@v6 59 with: 60 node-version-file: .nvmrc 61 cache: yarn ··· 86 run: yarn typecheck 87 88 - name: 🔨 Setup EAS 89 + uses: expo/expo-github-action@main 90 if: ${{ !steps.fingerprint.outputs.includes-changes }} 91 with: 92 expo-version: latest ··· 172 fetch-depth: 5 173 174 - name: 🔧 Setup Node 175 + uses: actions/setup-node@v6 176 with: 177 node-version-file: .nvmrc 178 cache: yarn 179 180 - name: 🔨 Setup EAS 181 + uses: expo/expo-github-action@main 182 with: 183 expo-version: latest 184 eas-version: latest ··· 188 run: yarn global add eas-cli-local-build-plugin 189 190 - name: ⚙️ Install dependencies 191 + run: yarn install --frozen-lockfile 192 193 - uses: maxim-lobanov/setup-xcode@v1 194 with: ··· 200 version: 1.16.2 201 202 - name: 💾 Cache Pods 203 + uses: actions/cache@v4 204 id: pods-cache 205 with: 206 path: ./ios/Pods ··· 276 fetch-depth: 5 277 278 - name: 🔧 Setup Node 279 + uses: actions/setup-node@v6 280 with: 281 node-version-file: .nvmrc 282 cache: yarn 283 284 - name: 🔨 Setup EAS 285 + uses: expo/expo-github-action@main 286 with: 287 expo-version: latest 288 eas-version: latest ··· 297 java-version: "17" 298 299 - name: ⚙️ Install dependencies 300 + run: yarn install --frozen-lockfile 301 302 - name: 🔤 Compile translations 303 run: yarn intl:build
+5 -5
.github/workflows/golang-test-lint.yml
··· 7 - main 8 9 concurrency: 10 - group: '${{ github.workflow }}-${{ github.head_ref || github.ref }}' 11 cancel-in-progress: true 12 13 jobs: ··· 15 runs-on: ubuntu-latest 16 steps: 17 - name: Git Checkout 18 - uses: actions/checkout@v3 19 - name: Set up Go tooling 20 uses: actions/setup-go@v3 21 with: 22 - go-version: '1.23' 23 - name: Dummy Static Files 24 run: touch bskyweb/static/js/blah.js && touch bskyweb/static/css/blah.txt && touch bskyweb/static/media/blah.txt 25 - name: Check ··· 32 runs-on: ubuntu-latest 33 steps: 34 - name: Git Checkout 35 - uses: actions/checkout@v3 36 - name: Set up Go tooling 37 uses: actions/setup-go@v3 38 with: 39 - go-version: '1.23' 40 - name: Dummy Static Files 41 run: touch bskyweb/static/js/blah.js && touch bskyweb/static/css/blah.txt && touch bskyweb/static/media/blah.txt 42 - name: Lint
··· 7 - main 8 9 concurrency: 10 + group: "${{ github.workflow }}-${{ github.head_ref || github.ref }}" 11 cancel-in-progress: true 12 13 jobs: ··· 15 runs-on: ubuntu-latest 16 steps: 17 - name: Git Checkout 18 + uses: actions/checkout@v4 19 - name: Set up Go tooling 20 uses: actions/setup-go@v3 21 with: 22 + go-version: "1.23" 23 - name: Dummy Static Files 24 run: touch bskyweb/static/js/blah.js && touch bskyweb/static/css/blah.txt && touch bskyweb/static/media/blah.txt 25 - name: Check ··· 32 runs-on: ubuntu-latest 33 steps: 34 - name: Git Checkout 35 + uses: actions/checkout@v4 36 - name: Set up Go tooling 37 uses: actions/setup-go@v3 38 with: 39 + go-version: "1.23" 40 - name: Dummy Static Files 41 run: touch bskyweb/static/js/blah.js && touch bskyweb/static/css/blah.txt && touch bskyweb/static/media/blah.txt 42 - name: Lint
+7 -5
.github/workflows/lint.yml
··· 6 branches: 7 - main 8 concurrency: 9 - group: '${{ github.workflow }}-${{ github.head_ref || github.ref }}' 10 cancel-in-progress: true 11 12 jobs: ··· 15 runs-on: ubuntu-latest 16 steps: 17 - name: Check out Git repository 18 - uses: actions/checkout@v3 19 - name: Install node 20 - uses: actions/setup-node@v4 21 with: 22 node-version-file: .nvmrc 23 - name: Yarn install 24 uses: Wandalen/wretry.action@master 25 with: ··· 41 runs-on: ubuntu-latest 42 steps: 43 - name: Check out Git repository 44 - uses: actions/checkout@v3 45 - name: Install node 46 - uses: actions/setup-node@v4 47 with: 48 node-version-file: .nvmrc 49 - name: Yarn install 50 uses: Wandalen/wretry.action@master 51 with:
··· 6 branches: 7 - main 8 concurrency: 9 + group: "${{ github.workflow }}-${{ github.head_ref || github.ref }}" 10 cancel-in-progress: true 11 12 jobs: ··· 15 runs-on: ubuntu-latest 16 steps: 17 - name: Check out Git repository 18 + uses: actions/checkout@v4 19 - name: Install node 20 + uses: actions/setup-node@v6 21 with: 22 node-version-file: .nvmrc 23 + cache: yarn 24 - name: Yarn install 25 uses: Wandalen/wretry.action@master 26 with: ··· 42 runs-on: ubuntu-latest 43 steps: 44 - name: Check out Git repository 45 + uses: actions/checkout@v4 46 - name: Install node 47 + uses: actions/setup-node@v6 48 with: 49 node-version-file: .nvmrc 50 + cache: yarn 51 - name: Yarn install 52 uses: Wandalen/wretry.action@master 53 with:
+5 -4
.github/workflows/nightly-update-source-languages.yaml
··· 1 name: Nightly Update Source Languages 2 on: 3 schedule: 4 - - cron: '0 2 * * *' # run at 2 AM UTC 5 workflow_dispatch: 6 7 jobs: ··· 16 17 steps: 18 - name: Check out Git repository 19 - uses: actions/checkout@v3 20 with: 21 ssh-key: ${{secrets.GH_ACTION_DEPLOY_KEY}} 22 - name: Install node 23 - uses: actions/setup-node@v4 24 with: 25 node-version-file: .nvmrc 26 - name: Yarn install 27 uses: Wandalen/wretry.action@master 28 with: ··· 46 push_sources: false 47 create_pull_request: false 48 env: 49 - CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
··· 1 name: Nightly Update Source Languages 2 on: 3 schedule: 4 + - cron: "0 2 * * *" # run at 2 AM UTC 5 workflow_dispatch: 6 7 jobs: ··· 16 17 steps: 18 - name: Check out Git repository 19 + uses: actions/checkout@v4 20 with: 21 ssh-key: ${{secrets.GH_ACTION_DEPLOY_KEY}} 22 - name: Install node 23 + uses: actions/setup-node@v6 24 with: 25 node-version-file: .nvmrc 26 + cache: yarn 27 - name: Yarn install 28 uses: Wandalen/wretry.action@master 29 with: ··· 47 push_sources: false 48 create_pull_request: false 49 env: 50 + CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
+2 -2
.github/workflows/pull-request-comment.yml
··· 116 ref: ${{ steps.pr-info.outputs.head-sha }} 117 118 - name: 🔧 Setup Node 119 - uses: actions/setup-node@v4 120 with: 121 node-version-file: .nvmrc 122 cache: yarn ··· 140 run: yarn typecheck 141 142 - name: 🔨 Setup EAS 143 - uses: expo/expo-github-action@v8 144 with: 145 expo-version: latest 146 eas-version: latest
··· 116 ref: ${{ steps.pr-info.outputs.head-sha }} 117 118 - name: 🔧 Setup Node 119 + uses: actions/setup-node@v6 120 with: 121 node-version-file: .nvmrc 122 cache: yarn ··· 140 run: yarn typecheck 141 142 - name: 🔨 Setup EAS 143 + uses: expo/expo-github-action@main 144 with: 145 expo-version: latest 146 eas-version: latest
+5 -5
.github/workflows/pull-request-commit.yml
··· 29 fetch-depth: 0 30 31 - name: 🔧 Setup Node 32 - uses: actions/setup-node@v4 33 with: 34 node-version-file: .nvmrc 35 cache: yarn ··· 82 id: get-diff 83 uses: NejcZdovc/bundle-size-diff@v1 84 with: 85 - base_path: 'stats-base.json' 86 - pr_path: '../stats-new.json' 87 - excluded_assets: '(.+).chunk.js|(.+).js.map|(.+).json|(.+).png' 88 89 - name: 💬 Drop a comment 90 uses: marocchino/sticky-pull-request-comment@v2 ··· 110 if: github.event_name == 'pull_request' 111 112 - name: 🔧 Setup Node 113 - uses: actions/setup-node@v4 114 with: 115 node-version-file: .nvmrc 116 cache: yarn
··· 29 fetch-depth: 0 30 31 - name: 🔧 Setup Node 32 + uses: actions/setup-node@v6 33 with: 34 node-version-file: .nvmrc 35 cache: yarn ··· 82 id: get-diff 83 uses: NejcZdovc/bundle-size-diff@v1 84 with: 85 + base_path: "stats-base.json" 86 + pr_path: "../stats-new.json" 87 + excluded_assets: "(.+).chunk.js|(.+).js.map|(.+).json|(.+).png" 88 89 - name: 💬 Drop a comment 90 uses: marocchino/sticky-pull-request-comment@v2 ··· 110 if: github.event_name == 'pull_request' 111 112 - name: 🔧 Setup Node 113 + uses: actions/setup-node@v6 114 with: 115 node-version-file: .nvmrc 116 cache: yarn
+3 -3
.github/workflows/verify-yarn-lock.yml
··· 3 on: 4 pull_request: 5 concurrency: 6 - group: '${{ github.workflow }}-${{ github.head_ref || github.ref }}' 7 cancel-in-progress: true 8 9 jobs: ··· 12 runs-on: ubuntu-latest 13 steps: 14 - name: Check out PR HEAD 15 - uses: actions/checkout@v3 16 with: 17 fetch-depth: 0 18 ··· 20 run: git fetch origin ${{ github.base_ref }} --depth=1 21 22 - name: Install node 23 - uses: actions/setup-node@v4 24 with: 25 node-version-file: .nvmrc 26
··· 3 on: 4 pull_request: 5 concurrency: 6 + group: "${{ github.workflow }}-${{ github.head_ref || github.ref }}" 7 cancel-in-progress: true 8 9 jobs: ··· 12 runs-on: ubuntu-latest 13 steps: 14 - name: Check out PR HEAD 15 + uses: actions/checkout@v4 16 with: 17 fetch-depth: 0 18 ··· 20 run: git fetch origin ${{ github.base_ref }} --depth=1 21 22 - name: Install node 23 + uses: actions/setup-node@v6 24 with: 25 node-version-file: .nvmrc 26