.github/workflows/presubmit.yml #1022
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
schedule: | |
- cron: '0 12 * * *' | |
jobs: | |
cleanliness: | |
name: Cleanliness Checks | |
runs-on: ubuntu-18.04 | |
steps: | |
- name: 🛎️ Checkout | |
uses: actions/checkout@v2 | |
- name: 📥 Install Doxygen and Graphviz | |
run: sudo apt-get -y install doxygen graphviz | |
- name: 📥 Install cspell | |
run: sudo npm install -g cspell@4.0.38 | |
- name: 📦 Fast Setup | |
run: ./setup --generate-location-file | |
- name: 🧹 Lint | |
working-directory: projects/continuous_integration | |
run: make lint 1> /dev/null | |
- name: 🔤 Spellcheck | |
working-directory: projects/continuous_integration | |
run: make spellcheck | |
- name: 📖 Documentation | |
working-directory: projects/continuous_integration | |
run: make doxygen | |
- name: 📃 Check Variable Names | |
working-directory: projects/continuous_integration | |
run: make commit-tidy | |
- name: 🚀 Deploy | |
uses: JamesIves/github-pages-deploy-action@3.7.1 | |
# Only Deploy to gh-pages on master branch event | |
if: ${{ github.ref == 'refs/heads/master' && | |
github.event_name == 'push' }} | |
with: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
BRANCH: gh-pages | |
FOLDER: . | |
CLEAN: true | |
unit_tests: | |
name: Unit Tests + Coverage | |
runs-on: ubuntu-18.04 | |
steps: | |
- name: 🛎️ Checkout | |
uses: actions/checkout@v2 | |
- name: 📥 Install Cpp Coveralls | |
run: pip install --user cpp-coveralls | |
- name: 📦 Setup | |
run: ./setup | |
- name: 🧪 Run Tests | |
working-directory: projects/continuous_integration | |
run: make test | |
- name: 🩺 Code Coverage | |
working-directory: projects/continuous_integration | |
run: make coverage | |
- name: 🚀 Send Coverage to Codecov.io | |
uses: codecov/codecov-action@v1 | |
with: | |
file: projects/continuous_integration/build/test/coverage/coverage.xml | |
name: Full Platform Unit Tests | |
- name: 🗄️ Archive code coverage results | |
uses: actions/upload-artifact@v2 | |
with: | |
name: code-coverage-report | |
path: projects/continuous_integration/build/test/coverage/coverage.xml | |
linux_checks: | |
name: Linux Setup + Build Checks | |
runs-on: ubuntu-18.04 | |
steps: | |
- name: 🛎️ Checkout | |
uses: actions/checkout@v2 | |
- name: 📦 Setup | |
run: ./setup | |
- name: 🛠️ Build Applications | |
working-directory: projects/continuous_integration | |
run: make --no-print-directory all-projects | |
macosx_checks: | |
name: MacOS Setup + Build Checks | |
runs-on: macos-10.15 | |
steps: | |
- name: 🛎️ Checkout | |
uses: actions/checkout@v2 | |
- name: 📦 Setup | |
run: ./setup | |
- name: 🛠️ Build Hello World | |
working-directory: projects/hello_world | |
run: make application | |
- name: 🛠️ Build Barebones | |
working-directory: projects/barebones | |
run: make application | |
- name: 🛠️ Build Starter | |
working-directory: projects/starter | |
run: make application | |
- name: 🛠️ Build SJTwo GPIO | |
working-directory: demos/sjtwo/gpio | |
run: make application | |
- name: 🛠️ Build stm32f10x GPIO | |
working-directory: demos/stm32f10x/gpio | |
run: make application | |
- name: 🛠️ Build stm32f4xx GPIO | |
working-directory: demos/stm32f4xx/fk407m1_gpio | |
run: make application | |
- name: 🛠️ Build msp432p401r Blinker | |
working-directory: demos/msp432p401r/blinker | |
run: make application | |
- name: 🛠️ Build multiplatform Stopwatch | |
working-directory: demos/multiplatform/stopwatch | |
run: make application | |
- name: 🛠️ Build ARM Cortex DWT | |
working-directory: demos/arm_cortex/dwt_counter | |
run: make application |