{
  "_class" : "hudson.model.FreeStyleBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "com.cloudbees.jenkins.GitHubPushCause",
          "shortDescription" : "Started by GitHub push by ti-chi-bot[bot]"
        },
        {
          "_class" : "com.cloudbees.jenkins.GitHubPushCause",
          "shortDescription" : "Started by GitHub push by ti-chi-bot[bot]"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 21734,
      "buildableTimeMillis" : 21734,
      "buildingDurationMillis" : 48009,
      "executingTimeMillis" : 48009,
      "executorUtilization" : 1.0,
      "subTaskCount" : 0,
      "waitingDurationMillis" : 8517,
      "waitingTimeMillis" : 8517
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/main" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 1868,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
            "branch" : [
              {
                "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
                "name" : "origin/main"
              }
            ]
          },
          "revision" : {
            "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
            "branch" : [
              {
                "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
                "name" : "origin/main"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
        "branch" : [
          {
            "SHA1" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
            "name" : "origin/main"
          }
        ]
      },
      "remoteUrls" : [
        "https://github.com/PingCAP-QE/ci.git"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#1868",
  "duration" : 48009,
  "estimatedDuration" : 39542,
  "executor" : None,
  "fullDisplayName" : "seed #1868",
  "id" : "1868",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 1868,
  "queueId" : 3694595,
  "result" : "SUCCESS",
  "timestamp" : 1783375743083,
  "url" : "https://do.pingcap.net/jenkins/job/seed/1868/",
  "builtOn" : "default-r6g77",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "tekton/v1/triggers/triggers/env-gcp/kustomization.yaml",
          "tekton/v1/triggers/triggers/env-gcp/_/github-pr-synchronized-remove-hold.yaml"
        ],
        "commitId" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
        "timestamp" : 1783375709000,
        "author" : {
          "absoluteUrl" : "https://do.pingcap.net/jenkins/user/noreply",
          "fullName" : "noreply"
        },
        "authorEmail" : "noreply@github.com",
        "comment" : "feat(tekton): add trigger to auto-remove do-not-merge/hold on cherry-pick PRs (#4810)\u000a\u000a## Summary\u000a\u000aAdd a new Tekton Trigger that auto-removes `do-not-merge/hold` from\u000acherry-pick PRs when conflicts are resolved (synchronize event).\u000a\u000a## Changes\u000a\u000a1. **NEW**\u000a`tekton/v1/triggers/triggers/env-gcp/_/github-pr-synchronized-remove-hold.yaml`\u000a— Trigger with CEL filter and inline TaskSpec that:\u000a- Filters on `synchronize` action for 6 cherry-pick repos with\u000a`release-*` base ref and `do-not-merge/hold` +\u000a`type/cherry-pick-for-release-*` labels\u000a- Polls `mergeable` state (up to 10 × 5s) — exits silently if still\u000aCONFLICTING/UNKNOWN\u000a- Checks `do-not-merge/hold` was added by `ti-chi-bot` or\u000a`ti-chi-bot[bot]` via timeline API — human `/hold` is respected\u000a   - Posts a tip comment then removes the label\u000a\u000a2. **MODIFIED** `tekton/v1/triggers/triggers/env-gcp/kustomization.yaml`\u000a— registered the new trigger\u000a\u000a## Testing\u000a\u000a- `kustomize build tekton/v1/triggers/triggers/env-gcp` succeeds\u000a(verified via docker)\u000a- `gh pr view` with `--json mergeable` polling handles GitHubs async\u000amergeable computation\u000a- Cherry-pick repo set verified against `ti-community-cherrypicker`\u000aconfig in `ti-community-infra/configs`\u000a\u000a## Risk\u000a\u000aLow. Purely additive — no changes to existing triggers. Removes label\u000aonly when all gates pass. Fails closed (keeps hold) on\u000aCONFLICTING/UNKNOWN or non-bot labeler.\u000a\u000a## Open Items\u000a\u000a- Requirement #2 \"tip before adding\" — the add path is in prow config\u000a(`ti-community-infra/configs`), not this repo. Out of scope for this PR;\u000aseparate ticket needed if still wanted.\u000a\u000a---------\u000a\u000aSigned-off-by: wuhuizuo <wuhuizuo@126.com>\u000a",
        "date" : "2026-07-06 22:08:29 +0000",
        "id" : "5eb09603ade83a487a84556f31b2c9bccde9af1d",
        "msg" : "feat(tekton): add trigger to auto-remove do-not-merge/hold on",
        "paths" : [
          {
            "editType" : "add",
            "file" : "tekton/v1/triggers/triggers/env-gcp/_/github-pr-synchronized-remove-hold.yaml"
          },
          {
            "editType" : "edit",
            "file" : "tekton/v1/triggers/triggers/env-gcp/kustomization.yaml"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://do.pingcap.net/jenkins/user/noreply",
      "fullName" : "noreply"
    }
  ]
}