Challenge Protocol Nightly Tests - Sprint #648
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
name: "Challenge Protocol Nightly Tests - Sprint" | |
concurrency: | |
group: "challenge-nightly-tests-${{ github.ref }}-${{ github.event_name }}" | |
cancel-in-progress: true | |
on: | |
schedule: | |
# Runs every morning at 2am UTC | |
- cron: '0 2 * * *' | |
workflow_dispatch: | |
inputs: | |
repo_snapshots_branch: | |
description: 'branch of repo-snapshots to derive images and branches from.' | |
default: 'current-sprint' | |
required: true | |
jobs: | |
system-tests: | |
name: "Challenge System Tests" | |
runs-on: [ tests-suite ] | |
steps: | |
- name: "Config: Deploy new 0Chain network then run challenge tests against it" | |
run: | | |
echo "NETWORK_URL=$(echo dev-${RUNNER_NAME:(-1)}.devnet-0chain.net)" >> $GITHUB_ENV | |
echo "RUNNER_NUMBER=${RUNNER_NAME:(-1)}" >> $GITHUB_ENV | |
echo "REPO_SNAPSHOTS_BRANCH=$(echo $(([ -z '${{github.event.inputs.repo_snapshots_branch}}' ] && echo '<CURRENT BRANCH WITH FALLBACK TO CURRENT_SPRINT>') || echo '${{github.event.inputs.repo_snapshots_branch}}'))" >> $GITHUB_ENV | |
- name: 'Setup jq' | |
uses: dcarbone/[email protected] | |
with: | |
version: '1.7' | |
force: 'false' | |
- name: "Deploy 0Chain" | |
uses: 0chain/actions/deploy-0chain@master | |
with: | |
repo_snapshots_branch: "${{ env.REPO_SNAPSHOTS_BRANCH }}" | |
kube_config: ${{ secrets[format('DEV{0}KC', env.RUNNER_NUMBER)] }} | |
teardown_condition: "TESTS_PASSED" | |
SUBGRAPH_API_URL: ${{ secrets.SUBGRAPH_API_URL }} | |
TENDERLY_VIRTUAL_TESTNET_RPC_ID: "" | |
graphnode_sc: ${{ secrets.GRAPHNODE_SC }} | |
graphnode_network: ${{ secrets.GRAPHNODE_NETWORK }} | |
graphnode_ethereum_node_url: "" | |
svc_account_secret: ${{ secrets.SVC_ACCOUNT_SECRET }} | |
- name: "Run Challenge System tests" | |
uses: 0chain/actions/run-system-tests@master | |
with: | |
repo_snapshots_branch: "${{ env.REPO_SNAPSHOTS_BRANCH }}" | |
network: ${{ env.NETWORK_URL }} | |
svc_account_secret: ${{ secrets.SVC_ACCOUNT_SECRET }} | |
deploy_report_page: true | |
archive_results: true | |
run_flaky_tests: false | |
run_api_system_tests: false | |
run_cli_system_tests: false | |
run_tokenomics_system_tests: false | |
run_smoke_tests: false | |
run_tenderly_tests: false | |
run_s3mgrt_system_tests: false | |
run_challenge_system_tests: true | |
test_file_filter: ${{ env.TEST_FILE_FILTER }} | |
TENDERLY_VIRTUAL_TESTNET_RPC_ID: "" | |
S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }} | |
S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }} | |
notify_slack_on_failure: | |
runs-on: [self-hosted, arc-runner] | |
needs: [system-tests] | |
if: always() && (needs.system-tests.result == 'failure') | |
steps: | |
- name: "Notify Slack" | |
run: | | |
payload='{ | |
"text": "'"<!here> Challenge Protocol Nightly Tests - Current Sprint FAILED on $(echo ${GITHUB_REF#refs/heads/})!.\n View the test results on Github: https://github.com/0chain/system_test/actions/runs/${{ github.run_id }}"'", | |
"attachments": [ | |
{ | |
"text": "Challenge Protocol Nightly Tests - Current sprint: FAILED ⚠️", | |
"color": "#ff0000" | |
} | |
] | |
}' | |
curl -X POST -H 'Content-type: application/json' --data "${payload}" ${{ secrets.DEVOPS_CHANNEL_WEBHOOK_URL }} | |
notify_slack_on_success: | |
runs-on: [self-hosted, arc-runner] | |
needs: [system-tests] | |
if: always() && (needs.system-tests.result == 'success') | |
steps: | |
- name: "Notify Slack" | |
run: | | |
payload='{ | |
"text": "'"<!here> Challenge Protocol Nightly Tests - Current Sprint PASSING on $(echo ${GITHUB_REF#refs/heads/})!.\n View the test results on Github: https://github.com/0chain/system_test/actions/runs/${{ github.run_id }}"'", | |
"attachments": [ | |
{ | |
"text": "Challenge Protocol Nightly Tests - Current sprint: PASSED ✅", | |
"color": "#22bb33" | |
} | |
] | |
}' | |
curl -X POST -H 'Content-type: application/json' --data "${payload}" ${{ secrets.DEVOPS_CHANNEL_WEBHOOK_URL }} |