on: [push, pull_request, workflow_dispatch] name: Build jobs: build: runs-on: ubuntu-latest name: Build Test steps: - name: Checkout uses: actions/checkout@v2 - name: Cache west modules uses: actions/cache@v2 env: cache-name: cache-zephyr-modules with: path: | modules/ tools/ zephyr/ bootloader/ zmk/ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('manifest-dir/west.yml') }} restore-keys: | ${{ runner.os }}-build-${{ env.cache-name }}- ${{ runner.os }}-build- ${{ runner.os }}- - name: West Init uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-init with: args: 'init "-l config"' - name: West Update uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-update with: args: 'update' - name: West Config Zephyr Base uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-config with: args: 'config "--global zephyr.base-prefer configfile"' - name: West Zephyr Export uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-zephyr-export with: args: 'zephyr-export' - name: West Build (Corne Left) uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-build-corne-left with: args: 'build "-s zmk/app -b nice_nano -- -DSHIELD=corne_left -DZMK_CONFIG=/github/workspace/config"' - name: Corne DTS File if: ${{ always() }} run: cat -n build/zephyr/nice_nano.dts.pre.tmp - name: Corne Left Kconfig file run: cat build/zephyr/.config | grep -v "^#" | grep -v "^$" - name: Rename zmk.uf2 run: cp build/zephyr/zmk.uf2 corne_left_nice_nano.uf2 - name: Archive (Corne Left) uses: actions/upload-artifact@v2 with: name: firmware path: corne_left_nice_nano.uf2 - name: West Build (Corne Right) uses: 'docker://zmkfirmware/zephyr-west-action-arm:latest' id: west-build-corne-right with: args: 'build "--pristine -s zmk/app -b nice_nano -- -DSHIELD=corne_right -DZMK_CONFIG=/github/workspace/config"' - name: Corne Right Kconfig file run: cat build/zephyr/.config | grep -v "^#" | grep -v "^$" - name: Rename zmk.uf2 run: cp build/zephyr/zmk.uf2 corne_right_nice_nano.uf2 - name: Archive (Corne Right) uses: actions/upload-artifact@v2 with: name: firmware path: corne_right_nice_nano.uf2