-
Notifications
You must be signed in to change notification settings - Fork 18
62 lines (57 loc) · 2.38 KB
/
ci.yml
File metadata and controls
62 lines (57 loc) · 2.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#
# Workflow to build all relevant firmware configurations to make sure nothing has broken
#
name: CI
# Controls when the workflow will run
on:
pull_request:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on:
- self-hosted
# Uncomment to run on github's infrastructure (and comment out self-hosted above!)
# - ubuntu-latest
defaults:
run:
shell: bash -l {0}
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v3
- uses: conda-incubator/setup-miniconda@v2
with:
miniconda-version: "latest"
activate-environment: bristlemouth
environment-file: environment_ci.yml
auto-activate-base: false
- name: Checkout submodules
run: |
git submodule update --init --recursive src/lib/bm_core
git submodule update --init --recursive src/lib/bm_serial
git submodule update --init src/third_party/cobs-c
git submodule update --init src/third_party/lwip
git submodule update --init src/third_party/mcuboot
git submodule update --init src/third_party/memfault-firmware-sdk
git submodule update --init src/third_party/micropython
git submodule update --init src/third_party/micropython-lib
git submodule update --init src/third_party/tinycbor
git submodule update --init src/third_party/tinyusb
git submodule update --init src/third_party/BME280_driver
git submodule update --init test/third_party/fff
- name: Run Tests
run: python3 tools/scripts/test/did_i_break_something.py tools/scripts/test/configs --store
- name: Run HIL
run: python tools/scripts/cicd/bm_hil.py ./build/hello_world/src/bm_mote_v1.0-hello_world.elf.dfu.bin C000
- uses: actions/upload-artifact@v4
with:
name: hil_log
path: ~/sys_logs/cicd
- name: Clean Up
run: |
mkdir -p ~/sys_logs/cicd_local
mv -v ~/sys_logs/cicd/* ~/sys_logs/cicd_local