1515 outputs :
1616 CORE_TAG : ${{ env.CORE_TAG }}
1717 CORE_ARTIFACT : ${{ env.CORE_ARTIFACT }}
18- BOARD_NAMES : ${{ env.BOARD_NAMES }}
18+ BOARD_VARIANTS : ${{ env.BOARD_VARIANTS }}
1919 steps :
2020 - name : Install toolchain
2121 working-directory : /opt
5555 ./extra/bootstrap.sh -o=--filter=tree:0
5656 echo "CORE_TAG=$(git describe --always)" >> "$GITHUB_ENV"
5757 echo "CORE_ARTIFACT=ArduinoCore-zephyr-$(git describe --always)" >> "$GITHUB_ENV"
58- echo "BOARD_NAMES =[ $(cat boards.txt | grep '^[^#]*\.build\.variant' | cut -d '.' -f 1 | sort | xargs printf '"%s",' | sed -e 's/,$//') ]" >> "$GITHUB_ENV"
58+ echo "BOARD_VARIANTS =[ $(cat boards.txt | grep '^[^#]*\.build\.variant' | sed -e 's/^\([^#]*\)\.build\.variant=\(.*\)/{ variant: \"\2\", board: \"\1\" }/' | sort | xargs printf '"%s",' | sed -e 's/,$//') ]" >> "$GITHUB_ENV"
5959
6060 - name : Build variants
6161 run : |
9090 runs-on : ubuntu-latest
9191 needs : package-core
9292 strategy :
93- matrix :
94- board : ${{ fromJSON( needs.package-core.outputs.BOARD_NAMES ) }}
93+ matrix : ${{ fromJSON( needs.package-core.outputs.BOARD_VARIANTS ) }}
9594 fail-fast : false
9695 env :
9796 FQBN : arduino:zephyr:${{ matrix.board }}
@@ -165,7 +164,7 @@ jobs:
165164 - test-core
166165 if : ${{ !cancelled() && needs.package-core.result == 'success' }}
167166 env :
168- BOARD_NAMES : ${{ needs.package-core.outputs.BOARD_NAMES }}
167+ BOARD_VARIANTS : ${{ needs.package-core.outputs.BOARD_VARIANTS }}
169168 steps :
170169 - uses : actions/download-artifact@v4
171170 with :
@@ -175,24 +174,26 @@ jobs:
175174
176175 - run : |
177176 echo "### Core test results:" >> "$GITHUB_STEP_SUMMARY"
178- for BOARD in $(echo $BOARD_NAMES | jq -cr '.[]'); do
177+ for BOARD_VARIANT in $(echo $BOARD_VARIANTS | jq -cr '.[]'); do
178+ BOARD=$(echo $BOARD_VARIANT | jq -cr '.board')
179+ VARIANT=$(echo $BOARD_VARIANT | jq -cr '.variant')
179180 FQBN="arduino:zephyr:$BOARD"
180181 REPORT_FILE="arduino-zephyr-$BOARD.json"
181182 if [ ! -f $REPORT_FILE ]; then
182- echo "* :x: $BOARD - No report found?" >> "$GITHUB_STEP_SUMMARY"
183+ echo "* :x: $BOARD ($VARIANT) - No report found?" >> "$GITHUB_STEP_SUMMARY"
183184 else
184185 REPORT=$(jq -cr '.boards[0].sketches[0]' $REPORT_FILE)
185186 JOB_ID=$(echo $REPORT | jq -cr '.job_id')
186187 JOB_URL="https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}/job/${JOB_ID}#step:5:2"
187188 if ! $(echo $REPORT | jq -cr '.compilation_success') ; then
188- echo "* :x: [$BOARD]($JOB_URL) - **Build failed**" >> "$GITHUB_STEP_SUMMARY"
189+ echo "* :x: [$BOARD ($VARIANT) ]($JOB_URL) - **Build failed**" >> "$GITHUB_STEP_SUMMARY"
189190 else
190191 WARNINGS=$(echo $REPORT | jq -cr '.warnings.current.absolute // 0')
191192 if [ $WARNINGS -eq 0 ]; then
192- echo "* :white_check_mark: [$BOARD]($JOB_URL) - Build successful" >> "$GITHUB_STEP_SUMMARY"
193+ echo "* :white_check_mark: [$BOARD ($VARIANT) ]($JOB_URL) - Build successful" >> "$GITHUB_STEP_SUMMARY"
193194 else
194195 echo >> "$GITHUB_STEP_SUMMARY"
195- echo "<details><summary>:warning: <a href=\"$JOB_URL\">$BOARD</a> - $WARNINGS warnings:</summary>" >> "$GITHUB_STEP_SUMMARY"
196+ echo "<details><summary>:warning: <a href=\"$JOB_URL\">$BOARD ($VARIANT) </a> - $WARNINGS warnings:</summary>" >> "$GITHUB_STEP_SUMMARY"
196197 echo >> "$GITHUB_STEP_SUMMARY"
197198 echo "\`\`\`" >> "$GITHUB_STEP_SUMMARY"
198199 echo $REPORT | jq -cr '.warnings_log[]' >> "$GITHUB_STEP_SUMMARY"
0 commit comments