Skip to content

CMake: Formatting with gersemi #10

CMake: Formatting with gersemi

CMake: Formatting with gersemi #10

Workflow file for this run

name: Checks - formatting
on:
pull_request:
workflow_dispatch:
jobs:
format_check:
runs-on: ubuntu-latest
container:
image: ghcr.io/llnl/sundials_spack_cache:llvm-17.0.4-h4lflucc3v2vage45opbo2didtcuigsn.spack
steps:
- name: Install git
run: |
apt update
apt install -y git python3-pip
- name: Install gersemi
run: pip install gersemi
- name: Print gersemi version
run: gersemi --version
- name: Install fprettify
run: pip install fprettify
- name: Print fprettify version
run: fprettify --version
- name: Print clang-format version
run: clang-format --version
- name: Check out repository code
uses: actions/checkout@v4
with:
submodules: true
- name: Add safe directory
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Run checker on code
run: |
./scripts/format.sh CMakeLists.txt benchmarks cmake examples include src test
- name: Run git diff to see if anything changed
run: /usr/bin/git diff --name-only --exit-code
- name: Run git diff if we failed
if: failure()
run: /usr/bin/git diff > format.patch
- name: Archive diff as a patch if we failed
uses: actions/upload-artifact@v3
if: failure()
with:
name: format.patch
path: |
${{ github.workspace }}/format.patch