Files
stacks-puppet-node/.github/workflows/epoch-tests.yml
2023-12-11 09:31:49 -06:00

81 lines
3.0 KiB
YAML

## Github workflow to run epoch tests
name: Tests::Epoch
on:
workflow_call:
## env vars are transferred to composite action steps
env:
BITCOIND_TEST: 1
RUST_BACKTRACE: full
SEGMENT_DOWNLOAD_TIMEOUT_MINS: 15
TEST_TIMEOUT: 30
concurrency:
group: epoch-tests-${{ github.head_ref || github.ref || github.run_id }}
## Only cancel in progress if this is for a PR
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
# Epoch integration tests with code coverage
epoch-tests:
name: Epoch Tests
runs-on: ubuntu-latest
strategy:
## Continue with the test matrix even if we've had a failure
fail-fast: false
## Run a maximum of 32 concurrent tests from the test matrix
max-parallel: 32
matrix:
test-name:
- tests::epoch_205::bigger_microblock_streams_in_2_05
- tests::epoch_205::test_cost_limit_switch_version205
- tests::epoch_205::test_dynamic_db_method_costs
- tests::epoch_205::test_exact_block_costs
- tests::epoch_205::transition_empty_blocks
- tests::epoch_21::test_pox_missing_five_anchor_blocks
- tests::epoch_21::test_pox_reorg_one_flap
- tests::epoch_21::test_pox_reorgs_three_flaps
- tests::epoch_21::test_sortition_divergence_pre_21
- tests::epoch_21::test_v1_unlock_height_with_current_stackers
- tests::epoch_21::test_v1_unlock_height_with_delay_and_current_stackers
- tests::epoch_21::trait_invocation_cross_epoch
- tests::epoch_21::transition_adds_burn_block_height
- tests::epoch_21::transition_adds_get_pox_addr_recipients
- tests::epoch_21::transition_adds_mining_from_segwit
- tests::epoch_21::transition_adds_pay_to_contract
- tests::epoch_21::transition_empty_blocks
- tests::epoch_21::transition_fixes_bitcoin_rigidity
- tests::epoch_21::transition_removes_pox_sunset
- tests::epoch_22::disable_pox
- tests::epoch_22::pox_2_unlock_all
- tests::epoch_22::test_pox_reorg_one_flap
- tests::epoch_23::trait_invocation_behavior
- tests::epoch_24::fix_to_pox_contract
- tests::epoch_24::verify_auto_unlock_behavior
steps:
## Setup test environment
- name: Setup Test Environment
id: setup_tests
uses: stacks-network/actions/stacks-core/testenv@main
with:
btc-version: "25.0"
## Run test matrix using restored cache of archive file
## - Test will timeout after env.TEST_TIMEOUT minutes
- name: Run Tests
id: run_tests
timeout-minutes: ${{ fromJSON(env.TEST_TIMEOUT) }}
uses: stacks-network/actions/stacks-core/run-tests@main
with:
test-name: ${{ matrix.test-name }}
threads: 1
## Create and upload code coverage file
- name: Code Coverage
id: codecov
uses: stacks-network/actions/codecov@main
with:
test-name: ${{ matrix.test-name }}