mirror of
https://github.com/XRPLF/rippled.git
synced 2026-04-29 15:37:57 +00:00
This change enables all clang-tidy checks that are already passing. It also modifies the clang-tidy CI job, so it runs against all files if .clang-tidy changed.
56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
name: Clang-tidy check
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
check_only_changed:
|
|
description: "Check only changed files in PR. If false, checks all files in the repository."
|
|
type: boolean
|
|
default: false
|
|
create_issue_on_failure:
|
|
description: "Whether to create an issue if the check failed"
|
|
type: boolean
|
|
default: false
|
|
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
jobs:
|
|
determine-files:
|
|
name: Determine files to check
|
|
if: ${{ inputs.check_only_changed }}
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
clang_tidy_config_changed: ${{ steps.changed_clang_tidy.outputs.any_changed }}
|
|
any_cpp_changed: ${{ steps.changed_files.outputs.any_changed }}
|
|
all_changed_files: ${{ steps.changed_files.outputs.all_changed_files }}
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
|
|
- name: Get changed C++ files
|
|
id: changed_files
|
|
uses: tj-actions/changed-files@7dee1b0c1557f278e5c7dc244927139d78c0e22a # v47.0.4
|
|
with:
|
|
files: |
|
|
**/*.cpp
|
|
**/*.h
|
|
**/*.ipp
|
|
separator: " "
|
|
|
|
- name: Get changed clang-tidy configuration
|
|
id: changed_clang_tidy
|
|
uses: tj-actions/changed-files@7dee1b0c1557f278e5c7dc244927139d78c0e22a # v47.0.4
|
|
with:
|
|
files: |
|
|
.clang-tidy
|
|
|
|
run-clang-tidy:
|
|
needs: [determine-files]
|
|
if: ${{ always() && !cancelled() && (!inputs.check_only_changed || needs.determine-files.outputs.any_cpp_changed == 'true' || needs.determine-files.outputs.clang_tidy_config_changed == 'true') }}
|
|
uses: ./.github/workflows/reusable-clang-tidy-files.yml
|
|
with:
|
|
files: ${{ (needs.determine-files.outputs.clang_tidy_config_changed == 'true' && '') || (inputs.check_only_changed && needs.determine-files.outputs.all_changed_files || '') }}
|
|
create_issue_on_failure: ${{ inputs.create_issue_on_failure }}
|