You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Kaleidoscope/.github/workflows/build.yml

78 lines
3.2 KiB

name: Build
on: [push, pull_request]
env:
LC_ALL: C
KALEIDOSCOPE_CCACHE: 1
ARDUINO_DIRECTORIES_USER: ${{ github.workspace }}/.arduino/user
jobs:
smoke-sketches:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
id: arduino-cache
with:
path: |
${{ github.workspace }}/.arduino/data
${{ github.workspace }}/.arduino/downloads
key: ${{ runner.os }}-arduino
## We delete the Bundle's version of Kaleidoscope, and symlink ourselves in.
## This makes sure we're using the current version of the library.
- run: sudo apt-get install ccache
- run: git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio $ARDUINO_DIRECTORIES_USER/hardware/keyboardio
# - run: make adjust-git-timestamps
- name: Install arduino cli
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make install-arduino-cli
- name: Configure arduino cli
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make configure-arduino-cli
- name: Install arduino avr core
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make install-arduino-core-avr
- run: make smoke-sketches
run-google-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# - uses: mxschmitt/action-tmate@v3
- run: sudo apt-get install ccache
- run: git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio $ARDUINO_DIRECTORIES_USER/hardware/keyboardio
# - run: make adjust-git-timestamps
- name: Install arduino cli
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make install-arduino-cli
- name: Configure arduino cli
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make configure-arduino-cli
- name: Install arduino avr core
if: steps.arduino-cache.outputs.cache-hit != 'true'
run: make install-arduino-core-avr
- run: make prepare-virtual
- run: make simulator-tests
check-astyle:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio $ARDUINO_DIRECTORIES_USER/hardware/keyboardio
- run: make check-astyle
check-shellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: make shellcheck
check-cpplint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: git clone --depth 1 --recurse-submodules=build-tools --recurse-submodules=toolchain --recurse-submodules=avr/libraries/ --jobs 16 --shallow-submodules git://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio $ARDUINO_DIRECTORIES_USER/hardware/keyboardio
- run: make cpplint
find-filename-conflicts:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: make find-filename-conflicts