48 lines
1.3 KiB
YAML
48 lines
1.3 KiB
YAML
# Syntax reference https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions
|
|
# Environment reference https://help.github.com/en/actions/reference/virtual-environments-for-github-hosted-runners
|
|
name: format
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
- 'releases/**'
|
|
tags:
|
|
- '2.*'
|
|
pull_request:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: ubuntu-22.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Cache uncrustify
|
|
uses: actions/cache@v3
|
|
id: cache-uncrustify
|
|
with:
|
|
path: |
|
|
~/uncrustify
|
|
key: ${{ runner.os }}-uncrustify
|
|
|
|
- name: build uncrustify
|
|
if: steps.cache-uncrustify.outputs.cache-hit != 'true'
|
|
run: |
|
|
wget https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.72.0.tar.gz
|
|
tar xzvf uncrustify-0.72.0.tar.gz && cd uncrustify-uncrustify-0.72.0
|
|
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
|
|
cmake --build build -- -j$(nproc) -s
|
|
mkdir ~/uncrustify
|
|
cd build && cp uncrustify ~/uncrustify/
|
|
|
|
- name: Uncrustify check
|
|
run: |
|
|
~/uncrustify/uncrustify -c .uncrustify.cfg -l CPP --no-backup --replace */*.cpp */*.h
|
|
git diff
|
|
git diff | diff - /dev/null &> /dev/null
|