diff --git a/.github/workflows/run_test_cases.yaml b/.github/workflows/run_test_cases.yaml index e2d9d8484..76480acc3 100644 --- a/.github/workflows/run_test_cases.yaml +++ b/.github/workflows/run_test_cases.yaml @@ -64,6 +64,26 @@ jobs: CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }} run: make proper + - name: make cover + env: + PROFILE: ${{ matrix.profile }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }} + run: make cover + + - name: send to coveralls + if: github.repository == 'emqx/emqx' + env: + PROFILE: ${{ matrix.profile }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: make coveralls + + - name: get coveralls logs + if: failure() + run: cat rebar3.crashdump + - uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 with: name: coverdata-${{ matrix.profile }}-${{ matrix.otp }} @@ -111,14 +131,37 @@ jobs: ENABLE_COVER_COMPILE: 1 CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} run: ./scripts/ct/run.sh --ci --app ${{ matrix.app }} + + - name: make cover + env: + PROFILE: ${{ matrix.profile }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} + run: make cover + + - name: send to coveralls + if: github.repository == 'emqx/emqx' + env: + PROFILE: ${{ matrix.profile }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: make coveralls + + - name: get coveralls logs + if: failure() + run: cat rebar3.crashdump + - uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 with: name: coverdata-${{ matrix.profile }}-${{ matrix.prefix }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} path: _build/test/cover retention-days: 7 + - name: compress logs if: failure() run: tar -czf logs.tar.gz _build/test/logs + - uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 if: failure() with: @@ -161,15 +204,40 @@ jobs: CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} run: | make "${{ matrix.app }}-ct" + + - name: make cover + env: + PROFILE: ${{ matrix.profile }} + SUITEGROUP: ${{ matrix.suitegroup }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} + run: make cover + + - name: send to coveralls + if: github.repository == 'emqx/emqx' + env: + PROFILE: ${{ matrix.profile }} + SUITEGROUP: ${{ matrix.suitegroup }} + ENABLE_COVER_COMPILE: 1 + CT_COVER_EXPORT_PREFIX: ${{ matrix.profile }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: make coveralls + + - name: get coveralls logs + if: failure() + run: cat rebar3.crashdump + - uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 with: name: coverdata-${{ matrix.profile }}-${{ matrix.prefix }}-${{ matrix.otp }}-sg${{ matrix.suitegroup }} path: _build/test/cover if-no-files-found: warn # do not fail if no coverdata found retention-days: 7 + - name: compress logs if: failure() run: tar -czf logs.tar.gz _build/test/logs + - uses: actions/upload-artifact@5d5d22a31266ced268874388b861e4b58bb5c2f3 # v4.3.1 if: failure() with: @@ -178,7 +246,7 @@ jobs: compression-level: 0 retention-days: 7 - tests_passed: + finish: needs: - eunit_and_proper - ct @@ -186,66 +254,13 @@ jobs: runs-on: ubuntu-22.04 strategy: fail-fast: false - steps: - - run: echo "All tests passed" - make_cover: - needs: - - eunit_and_proper - - ct - - ct_docker - runs-on: ${{ endsWith(github.repository, '/emqx') && 'ubuntu-22.04' || fromJSON('["self-hosted","ephemeral","linux","x64"]') }} - container: ${{ inputs.builder }} - strategy: - fail-fast: false - matrix: - profile: - - emqx-enterprise - - permissions: - contents: read - - steps: - - uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4 - with: - name: ${{ matrix.profile }} - - name: extract artifact - run: | - unzip -o -q ${{ matrix.profile }}.zip - git config --global --add safe.directory "$GITHUB_WORKSPACE" - - - uses: actions/download-artifact@c850b930e6ba138125429b7e5c93fc707a7f8427 # v4.1.4 - name: download coverdata - with: - pattern: coverdata-${{ matrix.profile }}-* - path: _build/test/cover - merge-multiple: true - - - name: make cover - env: - PROFILE: ${{ matrix.profile }} - run: make cover - - - name: send to coveralls - if: github.repository == 'emqx/emqx' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - PROFILE: ${{ matrix.profile }} - run: make coveralls - - - name: get coveralls logs - if: failure() - run: cat rebar3.crashdump - - # do this in a separate job - upload_coverdata: - if: github.repository == 'emqx/emqx' - needs: make_cover - runs-on: ubuntu-22.04 permissions: pull-requests: write + steps: - name: Coveralls finished + if: github.repository == 'emqx/emqx' uses: coverallsapp/github-action@3dfc5567390f6fa9267c0ee9c251e4c8c3f18949 # v2.2.3 with: parallel-finished: true