Skip to content

Commit 57e69a9

Browse files
committed
add standard suite of actions for our library - compile, docs, post a bug
1 parent a7ab46c commit 57e69a9

File tree

3 files changed

+208
-0
lines changed

3 files changed

+208
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Add new issue to our main project
2+
3+
on:
4+
issues:
5+
types:
6+
- opened
7+
8+
jobs:
9+
add-to-project:
10+
name: Add issue to project
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/add-to-project@main
14+
with:
15+
# You can target a project in a different organization
16+
# to the issue
17+
project-url: https://github.com/orgs/sparkfun/projects/19
18+
github-token: ${{ secrets.DEFECT_ADD_TO_PROJECT }}
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: Build Documentation and Deploy
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
id-token: write
12+
pages: write
13+
14+
concurrency:
15+
group: "pages"
16+
cancel-in-progress: true
17+
18+
jobs:
19+
# Build job
20+
build:
21+
runs-on: ubuntu-latest
22+
steps:
23+
# Checkout the repository
24+
- name: Checkout repository
25+
uses: actions/checkout@v2
26+
with:
27+
fetch-depth: 0
28+
submodules: "true"
29+
30+
- name: Set Version
31+
run: echo "PROJECT_NUMBER = `git describe --tags`" >> ./docs/doxygen/doxygen-config
32+
33+
- name: Build Documentation
34+
uses: mattnotmitt/doxygen-action@v1.9.5
35+
with:
36+
doxyfile-path: "./docs/doxygen/doxygen-config"
37+
38+
# Upload the documentation as an artifact
39+
- name: Upload documentation
40+
uses: actions/upload-pages-artifact@v3.0.1
41+
with:
42+
path: ./docs/html
43+
44+
# Deploy job
45+
deploy:
46+
# Add a dependency to the build job
47+
needs: build
48+
49+
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment
50+
permissions:
51+
pages: write # to deploy to Pages
52+
id-token: write # to verify the deployment originates from an appropriate source
53+
54+
# Deploy to the github-pages environment
55+
environment:
56+
name: github-pages
57+
url: ${{ steps.deployment.outputs.page_url }}
58+
59+
# Specify runner + deployment step
60+
runs-on: ubuntu-latest
61+
steps:
62+
- name: Deploy to GitHub Pages
63+
id: deployment
64+
uses: actions/deploy-pages@v4 # or specific "vX.X.X" version tag for this action
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
name: Cross-compilation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
jobs:
10+
compile-sketch:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
fail-fast: false
15+
16+
matrix:
17+
board:
18+
# Uno
19+
# https://github.com/arduino/ArduinoCore-avr/blob/master/boards.txt
20+
- fqbn: arduino:avr:mega
21+
# platforms: |
22+
name: arduino:avr
23+
source-url: https://downloads.arduino.cc/packages/package_index.json
24+
25+
# ESP32
26+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
27+
- fqbn: esp32:esp32:esp32
28+
# platforms: |
29+
name: esp32:esp32
30+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
31+
32+
# ESP32-S2
33+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
34+
- fqbn: esp32:esp32:esp32s2
35+
# platforms: |
36+
name: esp32:esp32
37+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
38+
39+
# ESP32-C3
40+
# https://github.com/espressif/arduino-esp32/blob/master/boards.txt
41+
- fqbn: esp32:esp32:esp32c3
42+
# platforms: |
43+
name: esp32:esp32
44+
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
45+
46+
# Artemis / Apollo3
47+
# https://github.com/sparkfun/Arduino_Apollo3/blob/main/boards.txt
48+
- fqbn: SparkFun:apollo3:sfe_artemis_atp
49+
# platforms: |
50+
name: SparkFun:apollo3
51+
source-url: https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/master/package_sparkfun_apollo3_index.json
52+
53+
# ESP8266
54+
# https://github.com/esp8266/Arduino/blob/master/boards.txt
55+
- fqbn: esp8266:esp8266:thingdev
56+
# platforms: |
57+
name: esp8266:esp8266
58+
source-url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
59+
60+
# SAMD21
61+
# https://github.com/arduino/ArduinoCore-samd/blob/master/boards.txt
62+
- fqbn: arduino:samd:mkr1000
63+
# platforms: |
64+
name: arduino:samd
65+
source-url: https://downloads.arduino.cc/packages/package_index.json
66+
67+
# Nano BLE 33 / nRF52840
68+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
69+
- fqbn: arduino:mbed:nano33ble
70+
# platforms: |
71+
name: arduino:mbed
72+
source-url: https://downloads.arduino.cc/packages/package_index.json
73+
74+
# RP2040
75+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
76+
- fqbn: rp2040:rp2040:sparkfun_promicrorp2040
77+
# platforms: |
78+
name: rp2040:rp2040
79+
source-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
80+
81+
# RP2350
82+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
83+
- fqbn: rp2040:rp2040:sparkfun_promicrorp2350
84+
# platforms: |
85+
name: rp2040:rp2040
86+
source-url: https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
87+
88+
# STM32
89+
# https://github.com/arduino/ArduinoCore-mbed/blob/master/boards.txt
90+
- fqbn: STMicroelectronics:stm32:GenF4
91+
# platforms: |
92+
name: STMicroelectronics:stm32
93+
source-url: https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
94+
95+
steps:
96+
- name: Checkout
97+
uses: actions/checkout@v3
98+
99+
- name: Branch name
100+
run:
101+
echo running on branch ${GITHUB_REF##*/}
102+
103+
# Setup Arduino command line - install esp32 and all the libs flux needs
104+
- name: Arduino - Install and setup the Arduino CLI
105+
uses: arduino/setup-arduino-cli@v2
106+
107+
- name: Arduino - Start config file
108+
run: arduino-cli config init --additional-urls ${{ matrix.board.source-url}}
109+
110+
- name: Arduino - Update index
111+
run: arduino-cli core update-index
112+
113+
- name: Arduino - Install platform
114+
run: arduino-cli core install ${{ matrix.board.name}}
115+
116+
- name: Arduino - Install libraries
117+
run: |
118+
arduino-cli config set library.enable_unsafe_install true
119+
arduino-cli version
120+
arduino-cli lib install 'SparkFun Toolkit'
121+
122+
- name: Compile Sketch
123+
run: arduino-cli compile --fqbn ${{ matrix.board.fqbn }} examples/Example1_getLux --library .
124+
125+
# outputs:
126+
# report-artifact-name: ${{ steps.report-artifact-name.outputs.report-artifact-name }}

0 commit comments

Comments
 (0)