Allow branch names containing CI to run all jobs (#354) #385
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Lint | |
on: | |
pull_request: | |
push: | |
jobs: | |
astyle: | |
env: | |
ASTYLE_CMD: >- | |
astyle | |
--break-blocks | |
--indent-switches | |
--indent=force-tab=8 | |
--lineend=linux | |
--options=none | |
--pad-header | |
--pad-oper | |
--style=1tbs | |
--suffix=none | |
--unpad-paren | |
includes/*.h includes/*.hpp src/*.c src/*.cpp | |
name: Lint with `Artistic Style` | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Provision environment | |
uses: ./.github/actions/dependencies/install/apt-get | |
with: | |
packages: astyle | |
- name: Check if any modifications were made by `astyle` | |
run: | | |
ASTYLE_OUTPUT=$(${ASTYLE_CMD} --dry-run) | |
if [ -n "$(echo "${ASTYLE_OUTPUT}" | grep -v "Unchanged")" ]; then | |
echo "The following files are in need of formatting:" | |
echo "${ASTYLE_OUTPUT}" | grep -v "Unchanged" | awk '{print "`"$2"`"}' | |
echo "" | |
echo "Run the following command before submitting a pull request:" | |
echo '`'"${ASTYLE_CMD}"'`' | |
exit 1 | |
fi | |
- name: Write `$ASTYLE_OUTPUT` to `$GITHUB_STEP_SUMMARY` | |
if: failure() | |
run: | | |
ASTYLE_OUTPUT=$(${ASTYLE_CMD} --dry-run) | |
echo "### The following files are in need of formatting:" >> ${GITHUB_STEP_SUMMARY} | |
echo "${ASTYLE_OUTPUT}" | grep -v "Unchanged" | awk '{print "- `"$2"`"}' >> ${GITHUB_STEP_SUMMARY} | |
echo "### Run the following command before submitting a pull request:" >> ${GITHUB_STEP_SUMMARY} | |
echo -e '```shell\n'"${ASTYLE_CMD}"'\n```' >> ${GITHUB_STEP_SUMMARY} | |
- name: Generate `ArtisticStyleFormattingFixes.patch` file | |
if: failure() | |
run: | | |
${ASTYLE_CMD} | |
git diff --patch > ArtisticStyleFormattingFixes.patch | |
- name: Upload `ArtisticStyleFormattingFixes.patch` file | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: ArtisticStyleFormattingFixes.patch | |
path: ArtisticStyleFormattingFixes.patch | |
cmakelint: | |
name: Lint with `CMakeLint` | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Provision environment | |
run: pip install --user cmakelint | |
- name: Run linter | |
run: | | |
cmakelint --linelength=125 \ | |
CMakeLists.txt \ | |
*/CMakeLists.txt \ | |
*/*.cmake | |
prettier: | |
name: Lint with `Prettier` | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Provision environment | |
run: npm install prettier | |
- name: Run linter | |
run: | | |
npx prettier --check . |