Skip to content

Automatic validation (#1396) #687

Automatic validation (#1396)

Automatic validation (#1396) #687

Workflow file for this run

#Heavily inspired by the deal.II version of this workflow
#https://github.com/dealii/dealii
name: Clang tidy
on:
push:
# Runs on every push on master branch
branches:
- master
# Runs on every push on master branch. If a push contains multiple commits, it will be ran on the latest one.
pull_request:
paths-ignore:
- 'doc/**'
- 'contrib/**'
# Cancels running instances when a pull request is updated by a commit
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref || github.run_id }}
cancel-in-progress: true
env:
COMPILE_JOBS: 4
jobs:
tidy:
name: tidy
runs-on: [ubuntu-22.04]
strategy:
fail-fast: false
matrix:
dealii_version: ["master"]
# Run steps in container of dealii's master branch
#container:
# image: dealii/dealii:${{ matrix.dealii_version }}-focal
# options: --user root
steps:
- name: Setup
run: |
# Since dealii image doesn't include Node.js, we'll install it
sudo apt-get install -y software-properties-common
sudo add-apt-repository ppa:ginggs/deal.ii-9.5.1-backports
sudo apt-get update
sudo apt-get install -y --no-install-recommends nodejs \
clang-12 \
clang-tidy-12 \
numdiff \
libboost-all-dev \
libcgal-dev \
libp4est-dev \
trilinos-all-dev \
petsc-dev \
libmetis-dev \
libhdf5-mpi-dev \
deal.ii
# Checks-out Lethe with branch of triggering commit
- name: Checkout code
uses: actions/checkout@v2
- name: Tidy
run: |
mkdir build
cd build
export PATH=/usr/lib/llvm-12/share/clang/:$PATH
../contrib/utilities/run_clang_tidy.sh ..