Non critical integration tests #862
This file contains 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
# Runs daily (2am) | |
name: Non critical integration tests | |
on: | |
schedule: | |
- cron: "0 2 * * *" | |
env: | |
toolchain: nightly-2021-11-20 | |
jobs: | |
non-critical: | |
name: Run long-running critical cucumber tests | |
runs-on: ubuntu-18.04 | |
steps: | |
- name: checkout | |
uses: actions/checkout@v2 | |
- name: toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ env.toolchain }} | |
profile: minimal | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
- name: ubuntu dependencies | |
run: | | |
sudo apt-get update && \ | |
sudo apt-get -y install \ | |
openssl \ | |
libssl-dev \ | |
pkg-config \ | |
libsqlite3-dev \ | |
clang-10 \ | |
git \ | |
cmake \ | |
libc++-dev \ | |
libc++abi-dev \ | |
libprotobuf-dev \ | |
protobuf-compiler \ | |
libncurses5-dev \ | |
libncursesw5-dev \ | |
zip \ | |
build-essential \ | |
libgtk-3-dev \ | |
libwebkit2gtk-4.0-dev \ | |
libsoup2.4-dev \ | |
curl \ | |
wget \ | |
libappindicator3-dev \ | |
patchelf \ | |
librsvg2-dev | |
- name: node -v | |
run: node -v | |
- name: build base node | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --bin tari_base_node | |
- name: build console wallet | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --bin tari_console_wallet | |
- name: build merge mining proxy | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --bin tari_merge_mining_proxy | |
- name: build miner | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --bin tari_miner | |
- name: build validator node | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release --bin tari_validator_node | |
- name: npm ci | |
run: cd integration_tests && npm ci && cd node_modules/wallet-grpc-client && npm ci | |
- name: Run integration tests | |
run: cd integration_tests && mkdir -p cucumber_output && node_modules/.bin/cucumber-js --profile "non-critical" --tags "not @wallet-ffi" --format json:cucumber_output/tests.cucumber --exit --retry 2 --retry-tag-filter "@flaky and not @broken" | |
- name: Generate report | |
if: always() | |
run: cd integration_tests && node ./generate_report.js | |
- name: Store test results | |
uses: actions/upload-artifact@v3 | |
if: always() | |
with: | |
name: test results | |
path: | | |
integration_tests/cucumber_output | |
integration_tests/temp/reports |