diff --git a/.github/workflows/coverage_report.yml b/.github/workflows/coverage_report.yml deleted file mode 100644 index 4971319c0e..0000000000 --- a/.github/workflows/coverage_report.yml +++ /dev/null @@ -1,152 +0,0 @@ -# --------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# --------------------------------------------------------------------------- - -name: coverage report - -on: - pull_request_target: - -jobs: - report: - runs-on: ubuntu-latest - - permissions: - pull-requests: write - issues: write - - steps: - - - name: Setup go - uses: actions/setup-go@v3 - with: - go-version: '1.18' - check-latest: true - - - name: Get Old Coverage - shell: bash - run: | - git clone https://github.com/apache/camel-k.git - cd camel-k - old_coverage="$(grep -o -P '(?<=Coverage-)(.*)(?=%)' README.adoc)" - cd .. - rm -rf camel-k - - - name: Checkout - shell: bash - run: | - git clone ${{github.server_url}}/${{ github.repository }}.git - cd camel-k - git checkout ${{ github.event.pull_request.head.ref }} - - - name: Commit - shell: bash - working-directory: ./camel-k - env: - CI_USER: "github-actions[bot]" - CI_EMAIL: "41898282+github-actions[bot]@users.noreply.github.com" - run: | - git config --local user.email "$CI_EMAIL" - git config --local user.name "$CI_USER" - git remote add upstream https://github.com/apache/camel-k.git - git fetch upstream - git add --all && git commit -m 'chore: coverage report PR changes' && echo "pr_changes=1" >> $GITHUB_ENV || echo "No changes to PR" - - - name: Push and Rebase - shell: bash - working-directory: ./camel-k - if: env.pr_changes == 1 - env: - CI_USER: "github-actions[bot]" - CI_EMAIL: "41898282+github-actions[bot]@users.noreply.github.com" - CI_TOKEN: ${{ inputs.secretGithubToken }} - run: | - git push "https://$CI_USER:$CI_TOKEN@github.com/$GITHUB_REPOSITORY.git" HEAD:${{ inputs.branch-ref }} - git pull --rebase upstream main || git rebase --abort && echo "rebaseAborted=1" >> $GITHUB_ENV - - - name: Get New Coverage - shell: bash - working-directory: ./camel-k - if: env.rebaseAborted != 1 - env: - CI_USER: "github-actions[bot]" - CI_EMAIL: "41898282+github-actions[bot]@users.noreply.github.com" - CI_TOKEN: ${{ inputs.secretGithubToken }} - run: | - go test -v ./... -covermode=count -coverprofile=coverage.out - go tool cover -func=coverage.out -o=coverage.out - - new_coverage="$(grep -o -P '(?<=\(statements\))(.+)(?=%)' coverage.out | xargs)" - - echo "OLD - $old_coverage" - echo "NEW - $new_coverage" - - coverage_difference=$(bc <<< $new_coverage-$old_coverage) - - if (( $(echo "$coverage_difference > 0" |bc -l) )); then - echo "POS_DIFF=POS" >> $GITHUB_ENV - elif (( $(echo "$coverage_difference < 0" |bc -l) )); then - echo "POS_DIFF=NEG" >> $GITHUB_ENV - else - echo "POS_DIFF=ZERO" >> $GITHUB_ENV - fi - - echo "NEW_COV=$new_coverage" >> $GITHUB_ENV - echo "OLD_COV=$old_coverage" >> $GITHUB_ENV - echo "COV_DIFF=$coverage_difference" >> $GITHUB_ENV - - - - name: Comment Coverage - if: env.rebaseAborted != 1 - uses: actions/github-script@v6 - with: - github-token: ${{secrets.GITHUB_TOKEN}} - script: | - - if(${{env.POS_DIFF == 'POS'}}){ - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: ':camel: **Thank You for contributing!** :camel: \n\n **Code Coverage Report** :heavy_check_mark:\n - Coverage changed from: **${{env.OLD_COV}}%** -> **${{env.NEW_COV}}%**\n- Coverage difference: +**${{env.COV_DIFF}}%**' - }) - }else if(${{env.POS_DIFF == 'NEG'}}){ - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: ':camel: **Thank You for contributing!** :camel: \n\n **Code Coverage Report** :warning:\n - Coverage changed from: **${{env.OLD_COV}}%** -> **${{env.NEW_COV}}%**\n- Coverage difference: **${{env.COV_DIFF}}%**' - }) - }else{ - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: ':camel: **Thank You for contributing!** :camel: \n\n **Code Coverage Report** :heavy_check_mark:\n - Coverage unchanged.' - }) - } - - - name: Comment Merge Conflicts - if: env.rebaseAborted == 1 - uses: actions/github-script@v6 - with: - github-token: ${{secrets.GITHUB_TOKEN}} - script: | - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: ':camel: **Thank You for contributing!** :camel: \n\n Unable to create **Coverage Report** :warning:. \n Merge conflicts found.' \ No newline at end of file