用途:为数据管道自动化创建和部署声明式 GCP 资源,支持 BigQuery、Dataform、Dataproc、BigQuery DTS 等。所有配置须统一维护在仓库根目录。
主要能力:生成或更新 deployment.yaml,将 dev、stage、prod 等环境映射到具体配置与资源;查看支持资源类型;验证并部署。
必要用法:
- 查看支持的资源类型:gcloud beta orchestration-pipelines resource-types list
- 发现环境参数:gcloud config get project、gcloud projects describe $(gcloud config get project) --format="value(projectNumber)"、gcloud config get-value compute/region、git rev-parse HEAD;环境名若未提供则默认 dev。
- 验证:gcloud beta orchestration-pipelines validate --environment=<ENV_NAME>
- 部署:gcloud beta orchestration-pipelines deploy --environment=<ENV_NAME> --local
规则与限制:每个资源须在 definition.labels 下硬编码 datacloud 标签(Antigravity 为 "antigravity",VS Code 为 "vscode",其他为 "other"),不得用变量替换。生成 bigquerydatatransfer.transferConfig 时须同文件显式定义目标 bigquery.dataset 并打标签,即使数据集已存在。禁止在 deployment.yaml 中硬编码明文密钥,敏感信息须存于 Secret Manager 并在 secrets: 块声明,变量与非敏感配置放在 variables: 块,资源定义中用 {{ VARIABLE_NAME }} 替换。不得创建新密钥,只能引用已有密钥,且不得读取或打印密钥值;若密钥不存在须请用户手动创建。部署前须验证。创建新传输后,运行完成时不要从 deployment.yaml 中移除 DTS 传输资源。完成标准:deployment.yaml 存在于仓库根目录且无占位符,部署命令成功执行(退出码 0)。模板参考 references/gcp-pipeline-resource-provisioning_spec.md。