From 8ad4f4133d737963795b0afe9d40f4612618a476 Mon Sep 17 00:00:00 2001
From: innovaker <66737976+innovaker@users.noreply.github.com>
Date: Wed, 2 Dec 2020 10:24:32 +0000
Subject: [PATCH] ci(build): add support for board-only builds

Lays the groundwork for CI building boards that don't require shields.

PR: #464
---
 .github/workflows/build.yml | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 6ead576b..eed78430 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -86,13 +86,28 @@ jobs:
         id: west-zephyr-export
         with:
           args: "zephyr-export"
+      - name: Prepare variables
+        id: variables
+        run: |
+          SHIELD_ARG=
+          ARTIFACT_NAME="${{ matrix.board }}"
+
+          if [ -n "${{ matrix.shield }}" ]; then
+            SHIELD_ARG="-DSHIELD=${{ matrix.shield }}"
+            ARTIFACT_NAME="${ARTIFACT_NAME}-${{ matrix.shield }}"
+          fi
+
+          ARTIFACT_NAME="${ARTIFACT_NAME}-zmk"
+
+          echo ::set-output name=shield-arg::${SHIELD_ARG}
+          echo ::set-output name=artifact-name::${ARTIFACT_NAME}
       - name: West build
         uses: "docker://zmkfirmware/zephyr-west-action-arm:latest"
         id: west-build
         with:
-          args: 'build "-s app -b ${{ matrix.board }} -- -DSHIELD=${{ matrix.shield }}"'
+          args: 'build "-s app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }}'
       - name: Archive build
         uses: actions/upload-artifact@v2
         with:
-          name: "${{ matrix.board }}-${{ matrix.shield }}-zmk-uf2"
+          name: "${{ steps.variables.outputs.artifact-name }}-uf2"
           path: build/zephyr/zmk.uf2