6363 build :
6464 name : build (${{ matrix.config.name }})
6565 needs : run-determination
66+ if : needs.run-determination.outputs.result == 'true'
6667 env :
6768 BUILD_ARTIFACTS_PATH : electron-app/dist/build-artifacts
6869 strategy :
@@ -82,13 +83,13 @@ jobs:
8283 runs-on : ${{ matrix.config.runs-on }}
8384 container : ${{ fromJSON(matrix.config.container) }}
8485 steps :
85- - name : Checkout
86+ - name : Checkout Repository
8687 uses : actions/checkout@v4
8788
88- - name : Install System Dependencies
89+ - name : Install Dependencies
8990 run : |
9091 sudo apt-get update
91- sudo apt-get install -y chromium-browser python3-distutils build-essential libssl-dev
92+ sudo apt-get install -y chromium-browser python3-distutils python3-pip build-essential libssl-dev
9293
9394 - name : Install Node.js
9495 uses : actions/setup-node@v4
@@ -116,22 +117,28 @@ jobs:
116117 repo-token : ${{ secrets.GITHUB_TOKEN }}
117118 version : 3.x
118119
119- - name : Set Chromium executable path for Puppeteer
120+ - name : Set Chromium Executable Path for Puppeteer
120121 run : |
121122 echo "PUPPETEER_EXECUTABLE_PATH=$(which chromium-browser)" >> $GITHUB_ENV
122123
123- - name : Install Dependencies & Build
124- env :
125- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
124+ - name : Install Project Dependencies
126125 run : |
127126 export PUPPETEER_SKIP_DOWNLOAD=true
128- yarn install --check-files
127+ yarn install --frozen-lockfile --check-files
128+
129+ - name : Fix Potential Node-Gyp Issues
130+ run : |
131+ npm rebuild node-gyp
132+ yarn rebuild
133+
134+ - name : Build Project
135+ run : |
129136 yarn --cwd arduino-ide-extension build
130137 yarn --cwd electron-app rebuild
131138 yarn --cwd electron-app build
132139 yarn --cwd electron-app package
133140
134- - name : Upload builds to job transfer artifact
141+ - name : Upload Builds to Job Transfer Artifact
135142 uses : actions/upload-artifact@v4
136143 with :
137144 name : ${{ env.JOB_TRANSFER_ARTIFACT_PREFIX }}${{ matrix.config.job-transfer-artifact-suffix }}
0 commit comments