diff --git a/.github/workflows/pr-darwin-test.yml b/.github/workflows/pr-darwin-test.yml index e97f3bbb03a..977c722bf87 100644 --- a/.github/workflows/pr-darwin-test.yml +++ b/.github/workflows/pr-darwin-test.yml @@ -93,6 +93,7 @@ jobs: id: cache-builtin-extensions uses: actions/cache/restore@v4 with: + enableCrossOsArchive: true path: .build/builtInExtensions key: "builtin-extensions-${{ hashFiles('.build/builtindepshash') }}" diff --git a/.github/workflows/pr-linux-test.yml b/.github/workflows/pr-linux-test.yml index b9c24a317d4..86cc0babed9 100644 --- a/.github/workflows/pr-linux-test.yml +++ b/.github/workflows/pr-linux-test.yml @@ -121,6 +121,7 @@ jobs: id: cache-builtin-extensions uses: actions/cache/restore@v4 with: + enableCrossOsArchive: true path: .build/builtInExtensions key: "builtin-extensions-${{ hashFiles('.build/builtindepshash') }}" diff --git a/.github/workflows/pr-node-modules.yml b/.github/workflows/pr-node-modules.yml index 7fbb4ecc1b8..c7e8f0113e9 100644 --- a/.github/workflows/pr-node-modules.yml +++ b/.github/workflows/pr-node-modules.yml @@ -72,6 +72,7 @@ jobs: id: cache-builtin-extensions uses: actions/cache@v4 with: + enableCrossOsArchive: true path: .build/builtInExtensions key: "builtin-extensions-${{ hashFiles('.build/builtindepshash') }}" @@ -108,6 +109,23 @@ jobs: path: .build/node_modules_cache key: "node_modules-linux-${{ hashFiles('.build/packagelockhash') }}" + - name: Install build dependencies + if: steps.cache-node-modules.outputs.cache-hit != 'true' + working-directory: build + run: | + set -e + + for i in {1..5}; do # try 5 times + npm ci && break + if [ $i -eq 5 ]; then + echo "Npm install failed too many times" >&2 + exit 1 + fi + echo "Npm install failed $i, trying again..." + done + env: + GITHUB_TOKEN: ${{ secrets.VSCODE_OSS }} + - name: Install dependencies if: steps.cache-node-modules.outputs.cache-hit != 'true' run: |