BLST smoke test #3873
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Check PR | |
| on: | |
| pull_request: | |
| concurrency: | |
| group: check-pr-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| check-pr: | |
| name: Check PR | |
| runs-on: ubuntu-latest | |
| outputs: | |
| lang-changed: ${{ steps.filter.outputs.lang == 'true' }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| cache: 'sbt' | |
| gpg-private-key: ${{ secrets.OSSRH_GPG_KEY }} | |
| gpg-passphrase: ${{ secrets.OSSRH_GPG_PASSPHRASE }} | |
| - uses: sbt/setup-sbt@508b753e53cb6095967669e0911487d2b9bc9f41 # v1.1.22 | |
| - name: Check PR | |
| run: sbt -J-Xlog:gc*=debug:file=./gc.log --batch checkPR | |
| #- if: always() | |
| # name: Fix test names and durations for Qase | |
| # run: | | |
| # find node/tests/target/test-reports -name "*.xml" -exec sed -E -i \ | |
| # -e 's/time="(0(\.0+)?|-0\.[0-9]+)"/time="0.001"/g' \ | |
| # -e 's/name="([^"]*)(NODE-[0-9]+ )([^"]*)"/name="\2 \1\3"/g' {} + | |
| # Temporarily disabled because of 402 Payment Required | |
| # - uses: qase-tms/gh-actions/run-create@v1 | |
| # if: always() | |
| # id: qase-run-create | |
| # with: | |
| # token: ${{ secrets.QASE_API_TOKEN }} | |
| # project: NODE | |
| # title: Check PR ${{ github.run_id }} — ${{ github.head_ref || github.ref_name }} | |
| # description: | | |
| # PR [#${{ github.event.number }}](https://github.com/wavesplatform/Waves/pulls/${{ github.event.number }}) — Run [#${{ github.run_number }}](https://github.com/wavesplatform/Waves/actions/runs/${{ github.run_id }}) | |
| # - uses: qase-tms/gh-actions/report@v1 | |
| # if: always() && steps.qase-run-create.outcome == 'success' | |
| # with: | |
| # token: ${{ secrets.QASE_API_TOKEN }} | |
| # project: NODE | |
| # id: ${{ steps.qase-run-create.outputs.id }} | |
| # format: junit | |
| # path: node/tests/target/test-reports | |
| # batch: 100 | |
| # - uses: qase-tms/gh-actions/run-complete@v1 | |
| # if: always() && steps.qase-run-create.outcome == 'success' | |
| # with: | |
| # token: ${{ secrets.QASE_API_TOKEN }} | |
| # project: NODE | |
| # id: ${{ steps.qase-run-create.outputs.id }} | |
| - uses: scacap/action-surefire-report@5609ce4db72c09db044803b344a8968fd1f315da | |
| if: always() | |
| with: | |
| report_paths: '**/target/test-reports/*.xml' | |
| create_check: false | |
| check_name: 'Check PR' | |
| - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 | |
| id: filter | |
| with: | |
| filters: | | |
| lang: | |
| - 'lang/**' | |
| - 'build.sbt' | |
| - 'project/*' | |
| - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 | |
| with: | |
| name: waves-fat-jar | |
| path: node/target/waves-all-*.jar | |
| - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 | |
| if: steps.filter.outputs.lang == 'true' | |
| with: | |
| name: file-compiler | |
| path: lang/jvm/target/file-compiler.jar | |
| - name: Save debug data | |
| uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 | |
| if: always() | |
| with: | |
| if-no-files-found: ignore | |
| name: debug-data | |
| path: | | |
| gc.log* | |
| hs*.log | |
| core* | |
| run-smoke-tests: | |
| needs: check-pr | |
| name: Run Smoke Tests ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-15-intel, macos-15, ubuntu-24.04, ubuntu-24.04-arm, windows-2022] | |
| steps: | |
| - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # 8.0.1 | |
| with: | |
| name: waves-fat-jar | |
| - run: java -cp '*' com.wavesplatform.utils.UtilApp smoke | |
| compile-contracts: | |
| name: Compile ${{ matrix.repo }} | |
| runs-on: ubuntu-latest | |
| needs: check-pr | |
| if: needs.check-pr.outputs.lang-changed == 'true' | |
| strategy: | |
| matrix: | |
| repo: | |
| - waves-exchange/neutrino-contract | |
| - waves-exchange/contracts | |
| - waves-ducks-core/wavesducks-public | |
| - swopfi/swopfi-smart-contracts | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| repository: ${{ matrix.repo }} | |
| - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # 8.0.1 | |
| with: | |
| name: file-compiler | |
| - run: find -name "*.ride" -type f -exec java -jar file-compiler.jar {} +; | |
| run-integration-tests: | |
| name: Run integration tests | |
| needs: check-pr | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| cache: 'sbt' | |
| - uses: sbt/setup-sbt@508b753e53cb6095967669e0911487d2b9bc9f41 # v1.1.22 | |
| - name: Run Integration Tests | |
| run: sbt --batch "node-it/docker;node-it/test" | |
| env: | |
| RUN_ID: ${{ github.head_ref }}-${{ github.run_number }}-${{ github.run_attempt }} | |
| - uses: scacap/action-surefire-report@5609ce4db72c09db044803b344a8968fd1f315da | |
| if: always() | |
| with: | |
| report_paths: '**/target/test-reports/*.xml' | |
| create_check: false | |
| check_name: 'Run integration tests' | |
| - name: Upload Logs | |
| uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 | |
| if: always() | |
| with: | |
| if-no-files-found: ignore | |
| name: test-logs | |
| path: | | |
| node-it/target/logs/*/ | |
| node-it/target/test-reports | |
| publish-snapshots: | |
| name: Publish snapshot packages | |
| needs: check-pr | |
| runs-on: ubuntu-latest | |
| if: contains(github.event.pull_request.labels.*.name, 'publish-snapshots') | |
| env: | |
| PR_NUMBER: ${{ github.event.number }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| cache: 'sbt' | |
| gpg-private-key: ${{ secrets.OSSRH_GPG_KEY }} | |
| gpg-passphrase: ${{ secrets.OSSRH_GPG_PASSPHRASE }} | |
| - uses: sbt/setup-sbt@508b753e53cb6095967669e0911487d2b9bc9f41 # v1.1.22 | |
| - run: sbt -Dproject.version=$(awk -F '[".]' '{print $3"."$4"."$5+1}' version.sbt)-$PR_NUMBER-SNAPSHOT --batch publish | |
| env: | |
| SONATYPE_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} | |
| SONATYPE_USERNAME: ${{ secrets.OSSRH_USERNAME }} | |
| PGP_PASSPHRASE: ${{ secrets.OSSRH_GPG_PASSPHRASE }} |