Skip to content
Success

Changes

Summary

  1. feat(tiflow): add nextgen DM integration presubmit (#4501) (commit: e629c7c) (details)
Commit e629c7c8683bce79a70d48f1d82e8bd677a5f283 by noreply
feat(tiflow): add nextgen DM integration presubmit (#4501)

## Summary
- add a dedicated `pingcap/tiflow` nextgen presubmit for
`release-nextgen-*` branches
- add a nextgen DM integration Jenkins job and pipeline derived from the
classic DM integration test
- switch downloaded dependency tags for `tidb` / `tikv` / `pd` to
`component.computeArtifactNextGenOciTagFromPR(...)`, point artifact
pulls to `tidbx`, and inject `NEXT_GEN=1` for the DM-under-test path

Closes #4499

## Why this shape
- keep the classic `pull_dm_integration_test` path untouched
- isolate nextgen behavior into a dedicated job / context / branch
matcher
- follow the existing `pingcap/ticdc` nextgen pattern for registry auth
and nextgen OCI tag resolution

## sync-diff-inspector decision
- this PR keeps `sync-diff-inspector` on the current fixed source
(`master`) instead of switching it to a nextgen tiflow package tag
- reason: the current request only requires the DM nextgen presubmit
plus nextgen dependency resolution for the external components (`tidb` /
`tikv` / `pd`), and switching `sync-diff-inspector` would add a
dependency on separate tiflow-package rollout work that is not required
for this minimal CI path

## Validation
### Before change
- `pingcap/tiflow` had only the classic DM integration presubmit in
`prow-jobs/pingcap/tiflow/latest-presubmits.yaml`
- there was no `pull_dm_integration_test_next_gen` job/pipeline path
- the classic pipeline used `computeArtifactOciTagFromPR(...)` for
`tidb` / `tikv` / `pd` and had no `NEXT_GEN` injection

### After change
- `git diff --check`: pass
- YAML parse: pass for
  - `prow-jobs/pingcap/tiflow/latest-presubmits-next-gen.yaml`
  - `prow-jobs/kustomization.yaml`
- kustomization inclusion check: pass for
`pingcap_tiflow_latest-presubmits-next-gen.yaml=pingcap/tiflow/latest-presubmits-next-gen.yaml`
- Jenkins model validation: pass
- `JENKINS_URL=https://do.pingcap.net/jenkins
./.ci/verify-jenkins-pipeline-file.sh
pipelines/pingcap/tiflow/latest/pull_dm_integration_test_next_gen.groovy`
  - result: `Jenkinsfile successfully validated.`
(commit: e629c7c)
The file was addedprow-jobs/pingcap/tiflow/latest-presubmits-next-gen.yaml
The file was modifiedtekton/v1/triggers/triggers/env-gcp/_/git-create-branch-ng.yaml (diff)
The file was modifiedprow-jobs/kustomization.yaml (diff)
The file was modifiedtekton/v1/triggers/triggers/env-gcp/_/git-push-branch-build-ng.yaml (diff)
The file was addedjobs/pingcap/tiflow/latest/pull_dm_integration_test_next_gen.groovy
The file was addedpipelines/pingcap/tiflow/latest/pull_dm_integration_test_next_gen.groovy
The file was modifiedtekton/v1/triggers/triggers/env-gcp/_/git-create-tag-build-ng.yaml (diff)