Skip to content

Collect artifacts

Collect artifacts #54

Workflow file for this run

name: C
on:
workflow_dispatch:
push:
branches: [ main ]
paths:
- 'example/**'
- 'src/**'
- 'node/**'
- 'CMakeLists.txt'
- '.github/workflows/c.yml'
pull_request:
branches: [ main ]
paths:
- 'example/**'
- 'src/**'
- 'node/**'
- 'CMakeLists.txt'
- '.github/workflows/c.yml'
jobs:
build-github-hosted:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
include:
- os: ubuntu-latest
pv_platform: linux
output_dir: linux/x86_64
- os: windows-latest
pv_platform: windows
output_dir: windows/amd64
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_platform: ${{ matrix.pv_platform }}
output_dir: ${{ matrix.output_dir }}
build-self-hosted:
runs-on: ${{ matrix.machine }}
strategy:
matrix:
machine: [rpi2, rpi3-32, rpi3-64, rpi4-32, rpi4-64, jetson, beaglebone]
include:
- machine: rpi2
pv_platform: raspberry-pi2
output_dir: raspberry-pi/cortex-a7
- machine: rpi3-32
pv_platform: raspberry-pi3
output_dir: raspberry-pi/cortex-a53
- machine: rpi3-64
pv_platform: raspberry-pi3-64
output_dir: raspberry-pi/cortex-a53-aarch64
- machine: rpi4-32
pv_platform: raspberry-pi4
output_dir: raspberry-pi/cortex-a72
- machine: rpi4-64
pv_platform: raspberry-pi4-64
output_dir: raspberry-pi/cortex-a72-aarch64
- machine: jetson
pv_platform: jetson-nano
output_dir: jetson/cortex-a57-aarch64
- machine: beaglebone
pv_platform: beaglebone
output_dir: beaglebone
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_platform: ${{ matrix.pv_platform }}
output_dir: ${{ matrix.output_dir }}
build-mac:
runs-on: pv-ios
strategy:
matrix:
pv_platform: [mac-arm64, mac-x86_64]
include:
- pv_platform: mac-arm64
output_dir: mac/arm64
- pv_platform: mac-x86_64
output_dir: mac/x86_64
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_platform: ${{ matrix.pv_platform }}
output_dir: ${{ matrix.output_dir }}
build-rpi0:
runs-on: rpi3-32
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: ./.github/actions/c-template
name: Build and test
with:
pv_platform: raspberry-pi
output_dir: raspberry-pi/arm11
collect-artifacts:
runs-on: ubuntu-latest
needs: [build-github-hosted, build-self-hosted, build-mac, build-rpi0]
steps:
- name: Download artifacts
uses: actions/download-artifact@v3
with:
path: artifacts
- name: Make collection directory
run: mkdir -p all-libs/lib
- name: Collect artifacts
shell: bash
run: |
for DIR in artifacts/*; do cp -a $DIR/* all-libs/lib/; done
- name: Upload all artifacts
uses: actions/upload-artifact@v3
with:
name: all-libs
path: all-libs
retention-days: 3