diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 93b311bfda..1a0fe64b79 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -1,6 +1,7 @@ --- name: Nightly Build on: # yamllint disable-line rule:truthy + workflow_dispatch: {} schedule: # * is a special character in YAML so you have to quote this string - cron: '0 0 * * *' @@ -31,89 +32,13 @@ jobs: property-polybft-test: true fuzz-test: true benchmark-test: true - deploy_network: - name: Deploy Network - uses: ./.github/workflows/deploy-network.yml - needs: check - if: needs.check.outputs.new_commit_count > 0 - with: - environment: nightly - block_gas_limit: "200000000" - block_time: "2" - is_london_fork_active: true - is_bridge_active: true - notification: false - secrets: - AWS_ROLE_ARN: ${{ secrets.AWS_ROLE_ARN }} - AWS_S3_BLADE_BUCKET: ${{ secrets.AWS_S3_BLADE_BUCKET }} - VAULT_PASSWORD: ${{ secrets.VAULT_PASSWORD }} - load_test_multiple_eoa: - name: Load Test EOA - uses: ./.github/workflows/load-test.yml - needs: deploy_network - with: - environment: nightly - scenario: EOA - timeout: "1800s" - rate: "3000" - timeUnit: "1s" - duration: "10m" - preAllocatedVUs: "60" - maxVUs: "60" - notification: false - secrets: - AWS_ROLE_ARN: ${{ secrets.AWS_ROLE_ARN }} - AWS_S3_BLADE_BUCKET: ${{ secrets.AWS_S3_BLADE_BUCKET }} - AWS_LOADTESTRUNNER_AMI_ID: ${{ secrets.AWS_LOADTESTRUNNER_AMI_ID }} - AWS_LOADTESTRUNNER_SUBNET_ID: ${{ secrets.AWS_LOADTESTRUNNER_SUBNET_ID }} - AWS_LOADTESTRUNNER_SG_ID: ${{ secrets.AWS_LOADTESTRUNNER_SG_ID }} - AWS_LOADTESTRUNNER_MNEMONIC: ${{ secrets.AWS_LOADTESTRUNNER_MNEMONIC }} - PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} - load_test_multiple_erc20: - name: Load Test ERC20 - uses: ./.github/workflows/load-test.yml - needs: [deploy_network, load_test_multiple_eoa] - with: - environment: nightly - scenario: ERC20 - timeout: "1800s" - rate: "1500" - timeUnit: "1s" - duration: "10m" - preAllocatedVUs: "60" - maxVUs: "60" - notification: false - secrets: - AWS_ROLE_ARN: ${{ secrets.AWS_ROLE_ARN }} - AWS_S3_BLADE_BUCKET: ${{ secrets.AWS_S3_BLADE_BUCKET }} - AWS_LOADTESTRUNNER_AMI_ID: ${{ secrets.AWS_LOADTESTRUNNER_AMI_ID }} - AWS_LOADTESTRUNNER_SUBNET_ID: ${{ secrets.AWS_LOADTESTRUNNER_SUBNET_ID }} - AWS_LOADTESTRUNNER_SG_ID: ${{ secrets.AWS_LOADTESTRUNNER_SG_ID }} - AWS_LOADTESTRUNNER_MNEMONIC: ${{ secrets.AWS_LOADTESTRUNNER_MNEMONIC }} - PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} - destroy_network: - name: Destroy Network - uses: ./.github/workflows/destroy-network.yml - needs: [deploy_network, load_test_multiple_eoa, load_test_multiple_erc20] - if: always() - with: - environment: nightly - logs: true - notification: false - secrets: - AWS_ROLE_ARN: ${{ secrets.AWS_ROLE_ARN }} - AWS_S3_BLADE_BUCKET: ${{ secrets.AWS_S3_BLADE_BUCKET }} - VAULT_PASSWORD: ${{ secrets.VAULT_PASSWORD }} notification_nightly: name: Nightly Notification uses: ./.github/workflows/notification-nightly.yml - needs: [ci, deploy_network, load_test_multiple_eoa, load_test_multiple_erc20, destroy_network] + needs: ci if: success() || failure() with: environment: nightly - logs: true build_blade_output: ${{ needs.ci.outputs.build-blade }} lint_output: ${{ needs.ci.outputs.lint }} unit_test_output: ${{ needs.ci.outputs.unit-test }} @@ -122,46 +47,6 @@ jobs: property_polybft_test_output: ${{ needs.ci.outputs.property-polybft-test }} fuzz_test_output: ${{ needs.ci.outputs.fuzz-test }} benchmark_test_output: ${{ needs.ci.outputs.benchmark-test }} - deploy_network_terraform_output: ${{ needs.deploy_network.outputs.terraform_output }} - deploy_network_ansible_output: ${{ needs.deploy_network.outputs.ansible_output }} - load_test_multiple_eoa_output: ${{ needs.load_test_multiple_eoa.outputs.load_test_output }} - load_test_multiple_erc20_output: ${{ needs.load_test_multiple_erc20.outputs.load_test_output }} - destroy_network_logs_output: ${{ needs.destroy_network.outputs.logs_output }} - destroy_network_terraform_output: ${{ needs.destroy_network.outputs.terraform_output }} secrets: AWS_S3_BLADE_BUCKET: ${{ secrets.AWS_S3_BLADE_BUCKET }} SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} - notification_load_test_multiple_eoa: - name: Load Test EOA Notification - uses: ./.github/workflows/notification-load-test.yml - needs: [load_test_multiple_eoa, notification_nightly] - if: (always() && needs.load_test_multiple_eoa.outputs.load_test_output == 'true') - with: - environment: nightly - scenario: EOA - tps_avg: ${{ needs.load_test_multiple_eoa.outputs.tps_avg }} - tps_max: ${{ needs.load_test_multiple_eoa.outputs.tps_max }} - iterations: ${{ needs.load_test_multiple_eoa.outputs.iterations }} - block: ${{ needs.load_test_multiple_eoa.outputs.block }} - ttm: ${{ needs.load_test_multiple_eoa.outputs.ttm }} - gas_avg: ${{ needs.load_test_multiple_eoa.outputs.gas_avg }} - gas_max: ${{ needs.load_test_multiple_eoa.outputs.gas_max }} - secrets: - SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} - notification_load_test_multiple_erc20: - name: Load Test ERC20 Notification - uses: ./.github/workflows/notification-load-test.yml - needs: [load_test_multiple_erc20, notification_nightly] - if: (always() && needs.load_test_multiple_erc20.outputs.load_test_output == 'true') - with: - environment: nightly - scenario: ERC20 - tps_avg: ${{ needs.load_test_multiple_erc20.outputs.tps_avg }} - tps_max: ${{ needs.load_test_multiple_erc20.outputs.tps_max }} - iterations: ${{ needs.load_test_multiple_erc20.outputs.iterations }} - block: ${{ needs.load_test_multiple_erc20.outputs.block }} - ttm: ${{ needs.load_test_multiple_erc20.outputs.ttm }} - gas_avg: ${{ needs.load_test_multiple_erc20.outputs.gas_avg }} - gas_max: ${{ needs.load_test_multiple_erc20.outputs.gas_max }} - secrets: - SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} diff --git a/.github/workflows/notification-nightly.yml b/.github/workflows/notification-nightly.yml index 8bdf8967be..55c5c88362 100644 --- a/.github/workflows/notification-nightly.yml +++ b/.github/workflows/notification-nightly.yml @@ -7,10 +7,6 @@ on: # yamllint disable-line rule:truthy description: The environment to run against type: string required: true - logs: - description: Upload Logs - type: string - required: true build_blade_output: description: Build Blade output type: string @@ -43,30 +39,6 @@ on: # yamllint disable-line rule:truthy description: Benchmark Tests output type: string required: true - deploy_network_terraform_output: - description: Deploy Network - Terraform output - type: string - required: true - deploy_network_ansible_output: - description: Deploy Network - Ansible output - type: string - required: true - load_test_multiple_eoa_output: - description: Load Test multiple_EOA output - type: string - required: true - load_test_multiple_erc20_output: - description: Load Test multiple_ERC20 output - type: string - required: true - destroy_network_logs_output: - description: Deploy Network - Logs output - type: string - required: true - destroy_network_terraform_output: - description: Destroy Network - Terraform output - type: string - required: true secrets: AWS_S3_BLADE_BUCKET: required: true @@ -95,7 +67,7 @@ jobs: { "attachments": [ { - "color": "${{ inputs.build_blade_output == '' && inputs.lint_output == '' && inputs.unit_test_output == '' && inputs.e2e_polybft_test_output == '' && inputs.e2e_legacy_test_output == '' && inputs.property_polybft_test_output == '' && inputs.fuzz_test_output == '' && inputs.benchmark_test_output == '' && inputs.deploy_network_terraform_output == '' && inputs.deploy_network_ansible_output == '' && inputs.load_test_multiple_eoa_output == 'true' && inputs.load_test_multiple_erc20_output == 'true' && inputs.destroy_network_logs_output == '' && inputs.destroy_network_terraform_output == '' && env.green_color || env.red_color }}", + "color": "${{ inputs.build_blade_output == '' && inputs.lint_output == '' && inputs.unit_test_output == '' && inputs.e2e_polybft_test_output == '' && inputs.e2e_legacy_test_output == '' && inputs.property_polybft_test_output == '' && inputs.fuzz_test_output == '' && inputs.benchmark_test_output == '' && env.green_color || env.red_color }}", "blocks": [ { "type": "header", @@ -141,15 +113,6 @@ jobs: "text": "Workflow Run" }, "url": "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" - }, - { - "type": "button", - "text": { - "type": "plain_text", - "text": "${{ inputs.logs == 'true' && inputs.destroy_network_logs_output == '' && 'Logs' || 'No Logs' }}" - }, - "style": "${{ inputs.logs == 'true' && inputs.destroy_network_logs_output == '' && env.succeed_bnt || env.failed_bnt }}", - "url": "https://s3.console.aws.amazon.com/s3/buckets/${{ secrets.AWS_S3_BLADE_BUCKET }}?region=${{ vars.AWS_REGION }}&prefix=logs/${{ github.run_id }}/" } ] } @@ -166,42 +129,6 @@ jobs: } } ] - }, - { - "color": "${{ inputs.deploy_network_terraform_output == '' && inputs.deploy_network_ansible_output == '' && env.green_color || env.red_color }}", - "blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Deploy Network*" - } - } - ] - }, - { - "color": "${{ inputs.load_test_multiple_eoa_output == 'true' && inputs.load_test_multiple_erc20_output == 'true' && env.green_color || env.red_color }}", - "blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Load Tests*\n${{ inputs.load_test_multiple_eoa_output == 'true' && 'EOA' || '~EOA~' }},\n${{ inputs.load_test_multiple_erc20_output == 'true' && 'ERC20' || '~ERC20~' }}" - } - } - ] - }, - { - "color": "${{ inputs.destroy_network_logs_output == '' && inputs.destroy_network_terraform_output == '' && env.green_color || env.red_color }}", - "blocks": [ - { - "type": "section", - "text": { - "type": "mrkdwn", - "text": "*Destroy Network*" - } - } - ] } ] }