|
|
@ -13,7 +13,24 @@ on: |
|
|
|
- "app/src/**" |
|
|
|
- "app/src/**" |
|
|
|
|
|
|
|
|
|
|
|
jobs: |
|
|
|
jobs: |
|
|
|
integration_test: |
|
|
|
collect-tests: |
|
|
|
|
|
|
|
outputs: |
|
|
|
|
|
|
|
test-dirs: ${{ steps.test-dirs.outputs.test-dirs }} |
|
|
|
|
|
|
|
runs-on: ubuntu-latest |
|
|
|
|
|
|
|
steps: |
|
|
|
|
|
|
|
- name: Checkout |
|
|
|
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
|
|
- name: Find test directories |
|
|
|
|
|
|
|
id: test-dirs |
|
|
|
|
|
|
|
run: | |
|
|
|
|
|
|
|
cd app/tests/ |
|
|
|
|
|
|
|
export TESTS=$(ls -d * | jq -R -s -c 'split("\n")[:-1]') |
|
|
|
|
|
|
|
echo "::set-output name=test-dirs::${TESTS}" |
|
|
|
|
|
|
|
run-tests: |
|
|
|
|
|
|
|
needs: collect-tests |
|
|
|
|
|
|
|
strategy: |
|
|
|
|
|
|
|
matrix: |
|
|
|
|
|
|
|
test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }} |
|
|
|
runs-on: ubuntu-latest |
|
|
|
runs-on: ubuntu-latest |
|
|
|
container: |
|
|
|
container: |
|
|
|
image: docker.io/zmkfirmware/zmk-build-arm:3.0 |
|
|
|
image: docker.io/zmkfirmware/zmk-build-arm:3.0 |
|
|
@ -43,8 +60,9 @@ jobs: |
|
|
|
run: west update |
|
|
|
run: west update |
|
|
|
- name: Export Zephyr CMake package (west zephyr-export) |
|
|
|
- name: Export Zephyr CMake package (west zephyr-export) |
|
|
|
run: west zephyr-export |
|
|
|
run: west zephyr-export |
|
|
|
- name: Test all |
|
|
|
- name: Test ${{ matrix.test }} |
|
|
|
run: west test |
|
|
|
working-directory: app |
|
|
|
|
|
|
|
run: west test tests/${{ matrix.test }} |
|
|
|
- name: Archive artifacts |
|
|
|
- name: Archive artifacts |
|
|
|
if: ${{ always() }} |
|
|
|
if: ${{ always() }} |
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|
uses: actions/upload-artifact@v2 |
|
|
|