catchError {
    def args = params.EXTRA_ARGS
    args += " --annotation jenkins.trigger=$BUILD_URL"
    args += " --annotation utf.daily_test=${new Date(currentBuild.startTimeInMillis).format("yyyy-MM-dd")}"

    def manifest = null
    node {
        stage("Fetch Manifest") {
            withCredentials([usernameColonPassword(credentialsId: 'github-sre-bot', variable: "GH_AUTH")]) {
                manifest = sh(script: "curl -sL -u $GH_AUTH https://raw.githubusercontent.com/pingcap/automated-tests/master/ticases/ticdc/suite_bank.jsonnet", returnStdout: true)
            }
        }
    }
    stage("Test") {
        build(job: 'utf-go-test', parameters: [
            string(name: 'SUITE', value: 'ticdc'),
            string(name: 'CASES', value: 'BANK-HEAVY'),
            string(name: 'MANIFEST', value: manifest),
            string(name: 'EXTRA_ARGS', value: args),
            string(name: 'TAG', value: 'debug'),
            booleanParam(name: 'REPORT', value: true),
        ])
    }
}
