diff --git a/.github/workflows/rpc_test_repeat.yml b/.github/workflows/rpc_test_repeat.yml new file mode 100644 index 000000000000..9c2d296759d0 --- /dev/null +++ b/.github/workflows/rpc_test_repeat.yml @@ -0,0 +1,46 @@ +name: RPC tests on repeat + +on: + workflow_dispatch: + inputs: + image: + description: 'Forest image to use' + required: false + default: 'ghcr.io/chainsafe/forest:edge-fat' + type: string + + schedule: + # Run every day at midnight + - cron: 0 0 * * * + +env: + SHELL_IMAGE: busybox + SCRIPT_TIMEOUT_MINUTES: 30 + +jobs: + calibnet-rpc-checks: + strategy: + fail-fast: false + matrix: + # GH Actions do not support running jobs in a loop. + # This is a workaround to run the same job 100 times. + x: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] + y: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] + name: Calibnet RPC checks + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Run api compare tests + shell: bash + run: | + IMAGE=${{ github.event.inputs.image }} + if [ -z "$IMAGE" ]; then + IMAGE="ghcr.io/chainsafe/forest:edge-fat" + fi + echo "FROM $IMAGE" > Dockerfile-RPC + export FOREST_DOCKERFILE_OVERRIDE=Dockerfile-RPC + ./scripts/tests/api_compare/setup.sh + timeout-minutes: '${{ fromJSON(env.SCRIPT_TIMEOUT_MINUTES) }}' + - name: Dump docker logs + if: always() + uses: jwalton/gh-docker-logs@v2