Skip to content

Commit 71e016f

Browse files
authored
feat(packages): add nextgen tiflow route and delivery (#957)
## Summary - add `nextgen` support to the latest `tiflow` package route and keep the darwin nodejs bootstrap in the new profile - add nextgen delivery rules for `tiflow`, `dm`, and `sync-diff-inspector` images in the `tidbx` registry path - include `sync-diff-inspector` in the delivery target image enumeration helper so local delivery validation matches the configured rules Closes #956 ## Verification - pre-change: `gen-package-images-with-config.sh tiflow linux amd64 v9.0.0 nextgen ...` failed with `No package routes matched` - pre-change: `get-delivery-target-images.ts --version=v26.3.1-nextgen --registry=us-docker.pkg.dev/pingcap-testing-account/tidbx` did not include `dm` / `tiflow` / `sync-diff-inspector` targets - post-change: the same `gen-package-images-with-config.sh` command generates a script with `NEXT_GEN=1 make dm-master-with-webui dm-worker dmctl dm-syncer sync-diff-inspector` and `tidbx` image destinations for all three tiflow-family images - post-change: the same delivery target generation now includes `us.gcr.io/pingcap-public/tidbx/dm:v26.3.1-nextgen`, `.../tiflow:v26.3.1-nextgen`, and `.../sync-diff-inspector:v26.3.1-nextgen` - post-change: `release` generation still emits the classic `hub/pingcap/tiflow/images/{sync-diff-inspector,dm,tiflow}` destinations
1 parent 412af88 commit 71e016f

2 files changed

Lines changed: 29 additions & 1 deletion

File tree

packages/delivery.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -486,6 +486,10 @@ image_copy_rules:
486486
- <<: *sync_nextgen
487487
dest_repositories:
488488
- us.gcr.io/pingcap-public/tidbx/ticdc
489+
us-docker.pkg.dev/pingcap-testing-account/tidbx/pingcap/tiflow/images/dm:
490+
- <<: *sync_nextgen
491+
dest_repositories:
492+
- us.gcr.io/pingcap-public/tidbx/dm
489493
us-docker.pkg.dev/pingcap-testing-account/tidbx/tikv/pd/image:
490494
- <<: *sync_nextgen
491495
dest_repositories:

packages/packages.yaml.tmpl

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2244,7 +2244,7 @@ components:
22442244
if: {{ semver.CheckConstraint ">= v9.0.0-0" .Release.version }}
22452245
os: [linux, darwin]
22462246
arch: [amd64, arm64]
2247-
profile: [release]
2247+
profile: [release, nextgen]
22482248
steps:
22492249
release:
22502250
- os: darwin
@@ -2267,6 +2267,27 @@ components:
22672267
npm install -g yarn
22682268
- script: |
22692269
make dm-master-with-webui dm-worker dmctl dm-syncer sync-diff-inspector
2270+
nextgen:
2271+
- os: darwin
2272+
description: install nodejs toolchain.
2273+
script: |
2274+
NODE_VERSION="v16.20.2"
2275+
NVM_VERSION="v0.39.5"
2276+
NVM_DIR="$HOME/.nvm"
2277+
mkdir -p $NVM_DIR
2278+
2279+
if [ ! -s "$NVM_DIR/nvm.sh" ]; then
2280+
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/${NVM_VERSION}/install.sh | bash
2281+
fi
2282+
. $NVM_DIR/nvm.sh
2283+
nvm install ${NODE_VERSION}
2284+
nvm use ${NODE_VERSION}
2285+
nvm alias default ${NODE_VERSION}
2286+
2287+
node --version && npm --version
2288+
npm install -g yarn
2289+
- script: |
2290+
NEXT_GEN=1 make dm-master-with-webui dm-worker dmctl dm-syncer
22702291
artifacts:
22712292
- name: "dm-master-{{ .Release.version }}-{{ .Release.os }}-{{ .Release.arch }}.tar.gz"
22722293
files:
@@ -2326,6 +2347,7 @@ components:
23262347
dmctl component of Data Migration Platform.
23272348
entrypoint: dmctl/dmctl
23282349
- name: "sync-diff-inspector-{{ .Release.version }}-{{ .Release.os }}-{{ .Release.arch }}.tar.gz"
2350+
if: {{ ne "nextgen" .Release.profile }}
23292351
files:
23302352
- name: sync_diff_inspector
23312353
src:
@@ -2336,6 +2358,7 @@ components:
23362358
sync-diff-inspector is a tool used to verify the consistency across different MySQL-compatible data sources.
23372359
entrypoint: sync_diff_inspector
23382360
- name: container image - sync-diff-inspector
2361+
if: {{ ne "nextgen" .Release.profile }}
23392362
type: image
23402363
artifactory:
23412364
repo: "{{ .Release.registry }}/pingcap/tiflow/images/sync-diff-inspector"
@@ -2360,6 +2383,7 @@ components:
23602383
src:
23612384
path: bin/dmctl
23622385
- name: container image - tiflow-engine
2386+
if: {{ ne "nextgen" .Release.profile }}
23632387
type: image
23642388
artifactory:
23652389
repo: "{{ .Release.registry }}/pingcap/tiflow/images/tiflow"

0 commit comments

Comments
 (0)