Ramon Roche c6a019a9d3
ci: build every target on a single step
Switching to use an all_variants approach to reduce the number of jobs
we are creating per workflow since are starting to get throttled by
GitHub, and we have limited resources.

TODO: Build artifact uploadeds to S3, and GH Releases
2022-02-01 20:30:57 -08:00

44 lines
1.1 KiB
YAML

name: Build and deploy all targets with metadata
on:
release:
types: [published]
create:
tags:
- 'v*'
push:
branches:
- 'master'
- 'release/*'
- 'pr-metadata-test'
- 'build_and_deploy_mix'
jobs:
enumerate_targets:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-focal:2021-09-08
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- id: set-matrix
run: echo "::set-output name=matrix::$(./Tools/generate_board_targets_json.py -a)"
build_all:
runs-on: ubuntu-latest
needs: enumerate_targets
strategy:
matrix: ${{fromJson(needs.enumerate_targets.outputs.matrix)}}
container: px4io/px4-dev-${{ matrix.container }}:2021-09-08
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- name: make ${{matrix.target}}
run: make ${{matrix.target}}
- name: parameter & events metadata
run: make ${{matrix.target}} ver_gen events_json actuators_json