ci: migrate workflows to zmk-docker

Leverages the new zmk-build-arm Docker image published by the zmk-docker project.  Reduces build times, enhances DevOps capabilities, and tightly couples CI build container with the dev container.

PR: #481
This commit is contained in:
innovaker 2020-12-10 17:37:30 +00:00 committed by Pete Johanson
parent b4c0967645
commit f9e74110ab
2 changed files with 14 additions and 41 deletions

View file

@ -13,6 +13,8 @@ on:
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: zmkfirmware/zmk-build-arm:2.3
strategy: strategy:
matrix: matrix:
board: board:
@ -82,25 +84,13 @@ jobs:
timeout-minutes: 2 timeout-minutes: 2
continue-on-error: true continue-on-error: true
- name: West init - name: West init
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west init -l app
id: west-init
with:
args: 'init "-l app"'
- name: West update - name: West update
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west update
id: west-update
with:
args: "update"
- name: West config Zephyr base - name: West config Zephyr base
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west config --global zephyr.base-prefer configfile
id: west-config
with:
args: 'config "--global zephyr.base-prefer configfile"'
- name: West Zephyr export - name: West Zephyr export
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west zephyr-export
id: west-zephyr-export
with:
args: "zephyr-export"
- name: Prepare variables - name: Prepare variables
id: variables id: variables
run: | run: |
@ -117,10 +107,7 @@ jobs:
echo ::set-output name=shield-arg::${SHIELD_ARG} echo ::set-output name=shield-arg::${SHIELD_ARG}
echo ::set-output name=artifact-name::${ARTIFACT_NAME} echo ::set-output name=artifact-name::${ARTIFACT_NAME}
- name: West build - name: West build
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west build -s app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }}
id: west-build
with:
args: 'build "-s app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }}'
- name: Archive build - name: Archive build
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:

View file

@ -15,6 +15,8 @@ on:
jobs: jobs:
integration_test: integration_test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container:
image: zmkfirmware/zmk-build-arm:2.3
steps: steps:
# To use this repository's private action, # To use this repository's private action,
# you must check out the repository # you must check out the repository
@ -38,31 +40,15 @@ jobs:
timeout-minutes: 2 timeout-minutes: 2
continue-on-error: true continue-on-error: true
- name: West init - name: West init
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west init -l app
id: west-init
with:
args: 'init "-l app"'
- name: West update - name: West update
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west update
id: west-update
with:
args: "update"
- name: West config Zephyr base - name: West config Zephyr base
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west config --global zephyr.base-prefer configfile
id: west-config
with:
args: 'config "--global zephyr.base-prefer configfile"'
- name: West Zephyr export - name: West Zephyr export
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west zephyr-export
id: west-zephyr-export
with:
args: "zephyr-export"
- name: Test all - name: Test all
uses: "docker://zmkfirmware/zephyr-west-action-arm:latest" run: west test
id: west-build
with:
entrypoint: /bin/bash
args: '-c "west test"'
- name: Archive build - name: Archive build
if: ${{ always() }} if: ${{ always() }}
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2