diff --git a/.github/workflows/build-boot.yml b/.github/workflows/build-boot.yml index 9ae6f0671..1a8a849f1 100644 --- a/.github/workflows/build-boot.yml +++ b/.github/workflows/build-boot.yml @@ -22,6 +22,7 @@ jobs: - cn9130_crb_boot - fireant_boot - nanopi_r2s_boot + - rpi2_boot - rpi64_boot env: MAKEFLAGS: -j5 diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml index b9e8a8a4c..d73f91540 100644 --- a/.github/workflows/build-image.yml +++ b/.github/workflows/build-image.yml @@ -8,6 +8,7 @@ on: type: choice required: true options: + - raspberrypi-rpi2 - raspberrypi-rpi64 - bananapi-bpi-r3 - friendlyarm-nanopi-r2s @@ -49,6 +50,11 @@ jobs: - name: Set bootloader and target based on board run: | case "${{ inputs.board }}" in + raspberrypi-rpi2) + echo "BOOTLOADER=rpi2-boot" >> $GITHUB_ENV + echo "ARCH=arm" >> $GITHUB_ENV + echo "BUILD_EMMC=false" >> $GITHUB_ENV + ;; raspberrypi-rpi64) echo "BOOTLOADER=rpi64-boot" >> $GITHUB_ENV echo "ARCH=aarch64" >> $GITHUB_ENV diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml index 85b729c1e..a3005b923 100644 --- a/.github/workflows/build-release.yml +++ b/.github/workflows/build-release.yml @@ -20,7 +20,7 @@ jobs: runs-on: [self-hosted, release] strategy: matrix: - target: [aarch64, x86_64] + target: [aarch64, arm, x86_64] fail-fast: false steps: - name: Cleanup podman state diff --git a/.github/workflows/trigger.yml b/.github/workflows/trigger.yml index b01c308d7..5a7a9f803 100644 --- a/.github/workflows/trigger.yml +++ b/.github/workflows/trigger.yml @@ -28,6 +28,7 @@ jobs: outputs: x86_64_target: ${{ steps.set-targets.outputs.x86_64_target }} aarch64_target: ${{ steps.set-targets.outputs.aarch64_target }} + arm_target: ${{ steps.set-targets.outputs.arm_target }} steps: - run: | echo "Triggering build, logging meta data ..." @@ -43,9 +44,11 @@ jobs: | grep -q "ci:main"; then echo "x86_64_target=x86_64_minimal" >> $GITHUB_OUTPUT echo "aarch64_target=aarch64_minimal" >> $GITHUB_OUTPUT + echo "arm_target=arm_minimal" >> $GITHUB_OUTPUT else echo "x86_64_target=x86_64" >> $GITHUB_OUTPUT echo "aarch64_target=aarch64" >> $GITHUB_OUTPUT + echo "arm_target=arm" >> $GITHUB_OUTPUT fi build-x86_64: @@ -62,6 +65,13 @@ jobs: name: "infix" target: ${{ needs.check-trigger.outputs.aarch64_target }} + build-arm: + needs: check-trigger + uses: ./.github/workflows/build.yml + with: + name: "infix" + target: ${{ needs.check-trigger.outputs.arm_target }} + test-run-x86_64: needs: [check-trigger, build-x86_64] uses: ./.github/workflows/test.yml diff --git a/board/arm/rootfs/.empty b/board/arm/rootfs/.empty new file mode 100644 index 000000000..e69de29bb diff --git a/test/test.mk b/test/test.mk index 0e8c528fe..46b2ab431 100644 --- a/test/test.mk +++ b/test/test.mk @@ -30,10 +30,11 @@ endif test: $(test-dir)/env -r $(base) $(mode) $(binaries) $(pkg-$(ARCH)) \ - sh -c '$(ninepm) -v $(TESTS); \ - $(ninepm_report) github $(test-dir)/.log/last/result.json; \ - $(ninepm_report) asciidoc $(test-dir)/.log/last/result.json; \ - chmod -R 777 $(test-dir)/.log' + sh -c '$(ninepm) -v $(TESTS); rc=$?; \ + $(ninepm_report) github $(test-dir)/.log/last/result.json || true; \ + $(ninepm_report) asciidoc $(test-dir)/.log/last/result.json || true; \ + chmod -R 777 $(test-dir)/.log || true; \ + exit $rc' test-sh: $(test-dir)/env $(base) $(mode) $(binaries) $(pkg-$(ARCH)) -i /bin/sh