From cd57566c1257766235a6b504be61cbff6a582a40 Mon Sep 17 00:00:00 2001 From: SorinO Date: Mon, 19 Jan 2026 14:32:00 +0200 Subject: [PATCH 1/4] CI: rename linux job and add run job for zephyr Signed-off-by: SorinO --- .github/workflows/linux.yml | 4 ++-- .github/workflows/zephyr.yml | 38 ++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 404d6f3d..267a8035 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -15,8 +15,8 @@ on: type: string jobs: - build-linux: - name: Linux build + build-and-run-linux: + name: Linux Build and Run runs-on: ["self-hosted", "build-server"] container: image: ghcr.io/${{ github.repository }}/devcontainer-linux:${{ inputs.devcontainer-tag }} diff --git a/.github/workflows/zephyr.yml b/.github/workflows/zephyr.yml index f1aa2fe3..2e1c39cd 100644 --- a/.github/workflows/zephyr.yml +++ b/.github/workflows/zephyr.yml @@ -89,3 +89,41 @@ jobs: echo "[ERROR] Expected log not found: $EXPECTED_LOG" exit 1 fi + + run-zephyr: + name: Zephyr Run + needs: build-zephyr + runs-on: ["self-hosted", "build-server"] + container: + image: ghcr.io/${{ github.repository }}/devcontainer-zephyr:${{ inputs.devcontainer-tag }} + options: --user 1000:1000 + strategy: + matrix: + board: + - native_sim/native/64 + app: + - mini + + steps: + - name: Set sane board name + run: | + BOARD=${{ matrix.board }} + echo "BOARD_NAME=$(printf "%s\n" "$BOARD" | tr / _)" >> $GITHUB_ENV + + - name: Download build artifacts + uses: actions/download-artifact@v4 + with: + name: ocre-zephyr-${{ env.BOARD_NAME }}-${{ matrix.app }} + + - name: Run ${{ matrix.board }} ${{ matrix.app }} + run: | + EXPECTED_LOG="powered by Ocre" + echo "Running application..." + stdbuf -oL -eL timeout 20s ./build/zephyr/zephyr.exe | tee zephyr_run.log + echo "===== Checking for expected log =====" + if grep -q "$EXPECTED_LOG" zephyr_run.log; then + echo "[OK] Found expected log: $EXPECTED_LOG" + else + echo "[ERROR] Expected log not found: $EXPECTED_LOG" + exit 1 + fi From 3012845fdde8198fc39c218f2c860ba358ef08cb Mon Sep 17 00:00:00 2001 From: SorinO Date: Mon, 19 Jan 2026 14:56:54 +0200 Subject: [PATCH 2/4] CI: fix path to zephyr.exe Signed-off-by: SorinO --- .github/workflows/zephyr.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/zephyr.yml b/.github/workflows/zephyr.yml index 2e1c39cd..ab653114 100644 --- a/.github/workflows/zephyr.yml +++ b/.github/workflows/zephyr.yml @@ -119,7 +119,7 @@ jobs: run: | EXPECTED_LOG="powered by Ocre" echo "Running application..." - stdbuf -oL -eL timeout 20s ./build/zephyr/zephyr.exe | tee zephyr_run.log + stdbuf -oL -eL timeout 20s ./zephyr.exe | tee zephyr_run.log echo "===== Checking for expected log =====" if grep -q "$EXPECTED_LOG" zephyr_run.log; then echo "[OK] Found expected log: $EXPECTED_LOG" From 0222c42754294d5dd2aaf758abf0c86f0f6c7977 Mon Sep 17 00:00:00 2001 From: SorinO Date: Mon, 19 Jan 2026 15:11:01 +0200 Subject: [PATCH 3/4] CI: add executable permission for zephyr.exe Signed-off-by: SorinO --- .github/workflows/zephyr.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/zephyr.yml b/.github/workflows/zephyr.yml index ab653114..9a390884 100644 --- a/.github/workflows/zephyr.yml +++ b/.github/workflows/zephyr.yml @@ -119,6 +119,7 @@ jobs: run: | EXPECTED_LOG="powered by Ocre" echo "Running application..." + chmod +x zephyr.exe stdbuf -oL -eL timeout 20s ./zephyr.exe | tee zephyr_run.log echo "===== Checking for expected log =====" if grep -q "$EXPECTED_LOG" zephyr_run.log; then From ba01f438eb3c5ec3daea9455d16cd11dd349e3d8 Mon Sep 17 00:00:00 2001 From: SorinO Date: Mon, 19 Jan 2026 15:39:32 +0200 Subject: [PATCH 4/4] CI: cleanup Signed-off-by: SorinO --- .github/workflows/linux.yml | 2 +- .github/workflows/zephyr.yml | 21 +++------------------ 2 files changed, 4 insertions(+), 19 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 267a8035..55655933 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -16,7 +16,7 @@ on: jobs: build-and-run-linux: - name: Linux Build and Run + name: Build and Run runs-on: ["self-hosted", "build-server"] container: image: ghcr.io/${{ github.repository }}/devcontainer-linux:${{ inputs.devcontainer-tag }} diff --git a/.github/workflows/zephyr.yml b/.github/workflows/zephyr.yml index 9a390884..3c3daa91 100644 --- a/.github/workflows/zephyr.yml +++ b/.github/workflows/zephyr.yml @@ -16,7 +16,7 @@ on: jobs: build-zephyr: - name: Zephyr build + name: Build runs-on: ["self-hosted", "build-server"] container: image: ghcr.io/${{ github.repository }}/devcontainer-zephyr:${{ inputs.devcontainer-tag }} @@ -76,22 +76,8 @@ jobs: build/zephyr/zephyr.dts build/zephyr/.config - - name: Test native_sim mini - if: startsWith(matrix.board, 'native_sim/') && matrix.app == 'mini' - run: | - EXPECTED_LOG="powered by Ocre" - echo "Running application..." - stdbuf -oL -eL timeout 20s ./build/zephyr/zephyr.exe | tee zephyr_run.log - echo "===== Checking for expected log =====" - if grep -q "$EXPECTED_LOG" zephyr_run.log; then - echo "[OK] Found expected log: $EXPECTED_LOG" - else - echo "[ERROR] Expected log not found: $EXPECTED_LOG" - exit 1 - fi - run-zephyr: - name: Zephyr Run + name: Run needs: build-zephyr runs-on: ["self-hosted", "build-server"] container: @@ -103,7 +89,6 @@ jobs: - native_sim/native/64 app: - mini - steps: - name: Set sane board name run: | @@ -115,7 +100,7 @@ jobs: with: name: ocre-zephyr-${{ env.BOARD_NAME }}-${{ matrix.app }} - - name: Run ${{ matrix.board }} ${{ matrix.app }} + - name: Run ${{ matrix.app }} on ${{ matrix.board }} run: | EXPECTED_LOG="powered by Ocre" echo "Running application..."