From b15ea156c8306f100bd045e0d042fd7819acf641 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Mon, 22 Jun 2020 13:06:45 -0400 Subject: [PATCH] move clang-tidy from Jenkins to Github Actions --- .github/workflows/clang-tidy.yml | 46 ++++++++++++++++++++++++++++++++ Jenkinsfile | 22 --------------- 2 files changed, 46 insertions(+), 22 deletions(-) create mode 100644 .github/workflows/clang-tidy.yml diff --git a/.github/workflows/clang-tidy.yml b/.github/workflows/clang-tidy.yml new file mode 100644 index 0000000000..e76ab909b5 --- /dev/null +++ b/.github/workflows/clang-tidy.yml @@ -0,0 +1,46 @@ +name: Clang Tidy + +on: + push: + branches: + - 'master' + pull_request: + branches: + - '*' + +jobs: + build: + runs-on: ubuntu-latest + container: px4io/px4-dev-clang:2020-04-01 + steps: + - uses: actions/checkout@v1 + with: + token: ${{secrets.ACCESS_TOKEN}} + + - name: Prepare ccache timestamp + id: ccache_cache_timestamp + shell: cmake -P {0} + run: | + string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) + message("::set-output name=timestamp::${current_date}") + - name: ccache cache files + uses: actions/cache@v2 + with: + path: ~/.ccache + key: clang-tidy-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} + restore-keys: clang-tidy-ccache- + - name: setup ccache + run: | + mkdir -p ~/.ccache + echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf + echo "compression = true" >> ~/.ccache/ccache.conf + echo "compression_level = 6" >> ~/.ccache/ccache.conf + echo "max_size = 400M" >> ~/.ccache/ccache.conf + ccache -s + ccache -z + + - name: make clang-tidy-quiet + run: | + ccache -z + make clang-tidy-quiet + ccache -s diff --git a/Jenkinsfile b/Jenkinsfile index 749211309a..e9995a1fce 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -120,28 +120,6 @@ pipeline { } } - stage('Clang tidy') { - agent { - docker { - image 'px4io/px4-dev-clang:2020-04-01' - args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw' - } - } - steps { - sh 'export' - sh 'make distclean' - sh 'git fetch --tags' - retry (3) { - sh 'make clang-tidy-quiet' - } - } - post { - always { - sh 'make distclean' - } - } - } - stage('Cppcheck') { agent { docker {