67 lines
1.8 KiB
YAML
67 lines
1.8 KiB
YAML
|
name: "CodeQL"
|
||
|
|
||
|
on:
|
||
|
push:
|
||
|
branches: [master]
|
||
|
pull_request:
|
||
|
branches: [master]
|
||
|
|
||
|
jobs:
|
||
|
analyze:
|
||
|
name: Analyze
|
||
|
runs-on: ubuntu-latest
|
||
|
|
||
|
strategy:
|
||
|
fail-fast: false
|
||
|
matrix:
|
||
|
language: ['cpp']
|
||
|
|
||
|
steps:
|
||
|
- name: Checkout repository
|
||
|
uses: actions/checkout@v2
|
||
|
with:
|
||
|
# We must fetch at least the immediate parents so that if this is
|
||
|
# a pull request then we can checkout the head.
|
||
|
fetch-depth: 2
|
||
|
|
||
|
# If this run was triggered by a pull request event, then checkout
|
||
|
# the head of the pull request instead of the merge commit.
|
||
|
- run: git checkout HEAD^2
|
||
|
if: ${{ github.event_name == 'pull_request' }}
|
||
|
|
||
|
# Initializes the CodeQL tools for scanning.
|
||
|
- name: Initialize CodeQL
|
||
|
uses: github/codeql-action/init@v1
|
||
|
with:
|
||
|
languages: ${{ matrix.language }}
|
||
|
|
||
|
- name: Install arduino-cli
|
||
|
run:
|
||
|
|
|
||
|
mkdir -p ~/.local/bin
|
||
|
echo "~/.local/bin" >> $GITHUB_PATH
|
||
|
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | BINDIR=~/.local/bin sh
|
||
|
|
||
|
- name: Install platform
|
||
|
run:
|
||
|
|
|
||
|
arduino-cli core update-index
|
||
|
arduino-cli core install arduino:avr
|
||
|
|
||
|
- name: Static link
|
||
|
run:
|
||
|
|
|
||
|
# static link fix from https://github.com/github/securitylab/discussions/171
|
||
|
for i in ~/.arduino*/packages/arduino/tools/avr-gcc/*/bin/*; do
|
||
|
mv "$i" "$i.real";
|
||
|
printf '#!/bin/bash\nexec "'"$i"'.real" ${1+"$@"}\n' > "$i";
|
||
|
chmod +x "$i";
|
||
|
done
|
||
|
|
||
|
- name: Build example
|
||
|
run:
|
||
|
arduino-cli compile --libraries /home/runner/work/RadioLib --fqbn arduino:avr:uno $PWD/examples/SX126x/SX126x_Transmit/SX126x_Transmit.ino --warnings=all
|
||
|
|
||
|
- name: Perform CodeQL Analysis
|
||
|
uses: github/codeql-action/analyze@v1
|