Skip to content

Commit 27ffe0c

Browse files
committed
Create build-only CI workflow
This CI workflow triggers a Github action to: - Install PlatformIO at a known version (modulo minor revision) - Runs against Windows, Linux, and MacOS - Builds a number of PlatformIO environments The PlatformIO environments built are initially noradio, wifi, and bt. It is easy to include additional environments, but in the spirit of having a CI which balances speed with catching true-positive failures, we select only these three. In addition, there is support for additional "_s2", "_s3" variants, but for this initial CI pipeline, they are not built, as they greatly increase CI time.
1 parent 98de972 commit 27ffe0c

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

.github/workflows/ci.yml

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: FluidNC Continuous Integration (Build Only)
2+
on: [push, pull_request]
3+
jobs:
4+
build:
5+
strategy:
6+
matrix:
7+
os:
8+
- ubuntu-latest
9+
- macos-latest
10+
- windows-latest
11+
pio_env:
12+
- noradio
13+
- wifi
14+
- bt
15+
# - wifibt
16+
# - debug
17+
pio_env_variant:
18+
- ""
19+
# - "_s2"
20+
# - "_s3"
21+
runs-on: ${{ matrix.os }}
22+
steps:
23+
- uses: actions/checkout@v3
24+
- name: Set up Python
25+
uses: actions/setup-python@v4
26+
with:
27+
python-version: "3.9"
28+
cache: "pip"
29+
- name: Install PlatformIO
30+
run: |
31+
python -m pip install --upgrade pip
32+
pip install -r requirements.txt
33+
- name: Cache PlatformIO
34+
uses: actions/cache@v3
35+
with:
36+
path: ~/.platformio
37+
key: platformio-${{ runner.os }}
38+
- name: Build target ${{ matrix.pio_env }}${{ matrix.pio_env_variant }}
39+
run: pio run -e ${{ matrix.pio_env }}${{ matrix.pio_env_variant }}

requirements.txt

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
platformio == 6.1.*

0 commit comments

Comments
 (0)