diff --git a/.ci/format_script.sh b/.ci/format_script.sh index 6bb51fa51291c..67503dd8710de 100755 --- a/.ci/format_script.sh +++ b/.ci/format_script.sh @@ -2,7 +2,6 @@ set -ex -BASE_COMMIT=$(git rev-parse $TRAVIS_BRANCH) echo "Running clang-format against branch $TRAVIS_BRANCH, with hash $BASE_COMMIT" COMMIT_FILES=$(git diff --name-only $BASE_COMMIT | grep -i -v LinkDef) RESULT_OUTPUT="$(git-clang-format --commit $BASE_COMMIT --diff --binary `which clang-format` $COMMIT_FILES)" diff --git a/.github/workflows/code_analysis.yml b/.github/workflows/code_analysis.yml new file mode 100644 index 0000000000000..4b36e6597d9c4 --- /dev/null +++ b/.github/workflows/code_analysis.yml @@ -0,0 +1,23 @@ +name: clang-tools code analysis + +on: pull_request + # push: + # branches: [ $default-branch ] + # pull_request: + # branches: [ $default-branch ] + +jobs: + clang-format: + runs-on: ubuntu-latest + env: + TRAVIS_BRANCH: ${{ github.base_ref }} + TRAVIS_PULL_REQUEST_BRANCH: ${{ github.head_ref }} + BASE_COMMIT: ${{ github.event.pull_request.base.sha }} + steps: + - uses: actions/checkout@v2 + - name: Fetch base_ref HEAD + run: git fetch --depth=1 origin +refs/heads/${{github.base_ref}}:refs/remotes/origin/${{github.base_ref}} + - name: install clang-format + run: sudo apt-get install -y clang-format + - name: run clang-format script + run: .ci/format_script.sh diff --git a/.travis.yml b/.travis.yml index 8041119e0bef9..180f5304daec9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,7 +23,11 @@ matrix: include: - env: TOOL=clang-format script: &format_script - - if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then .ci/format_script.sh; fi + - | + if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then + export BASE_COMMIT=$(git rev-parse $TRAVIS_BRANCH) + .ci/format_script.sh + fi - env: TOOL=clang-tidy-analyzer before_script: ©_headers