Skip to content

Replay-verify on archive: Mainnet #734

Replay-verify on archive: Mainnet

Replay-verify on archive: Mainnet #734

# This defines a workflow to replay transactions on the given chain with the latest aptos node software.
# In order to trigger it go to the Actions Tab of the Repo, click "replay-verify" and then "Run Workflow".
#
# On PR, a single test case will run. On workflow_dispatch, you may specify the CHAIN_NAME to verify.
name: "Replay-verify on archive: Mainnet"
on:
# Allow triggering manually
workflow_dispatch:
inputs:
IMAGE_TAG:
required: false
type: string
description: The image tag of the feature branch to test, if not specified, it will use the latest commit on current branch.
START_VERSION:
required: false
type: string
description: Optional version to start replaying. If not specified, replay-verify will determine start version itself.
END_VERSION:
required: false
type: string
description: Optional version to end replaying. If not specified, replay-verify will determine end version itself.
START_TIME:
required: false
type: string
description: 'Optional start time (e.g. "2 hours ago", "2026-03-19", "2026-03-19 10:00"). UTC assumed. Mutually exclusive with START_VERSION.'
END_TIME:
required: false
type: string
description: 'Optional end time. Same formats as START_TIME. Mutually exclusive with END_VERSION.'
DRY_RUN:
required: false
type: boolean
description: If true, the workflow will not run replay verify nor build images.
default: false
pull_request:
paths:
- ".github/workflows/replay-verify-mainnet.yaml"
- ".github/workflows/workflow-run-replay-verify-on-archive.yaml"
# schedule: # NOTE: the schedule is dictated by PIES
permissions:
contents: read
id-token: write #required for GCP Workload Identity federation which we use to login into Google Artifact Registry
issues: read
pull-requests: read
# cancel redundant builds
concurrency:
# cancel redundant builds on PRs (only on PR, not on branches)
group: ${{ github.workflow }}-${{ (github.event_name == 'pull_request' && github.ref) || github.sha }}-${{ inputs.IMAGE_TAG || 'latest' }}
cancel-in-progress: true
jobs:
replay:
if: github.event_name == 'workflow_dispatch'
uses: ./.github/workflows/workflow-run-replay-verify-on-archive.yaml
secrets: inherit
with:
NETWORK: "mainnet"
IMAGE_TAG: ${{ inputs.IMAGE_TAG }}
START_VERSION: ${{ inputs.START_VERSION }}
END_VERSION: ${{ inputs.END_VERSION }}
START_TIME: ${{ inputs.START_TIME }}
END_TIME: ${{ inputs.END_TIME }}
DRY_RUN: ${{ inputs.DRY_RUN || false }}