自定义工作流 kubernetes部署的问题

需求是想在zadig项目,上通过自定义工作流的kubernetes部署任务,将构建的镜像直接更新到 另外一个集群上的已经存在的deployment对象,命名空间和容器对象都选择好了,就是不太理解“容器镜像”应该是哪个。
图片

FYI:Kubernetes 部署任务

创建的自定义工作流,一个任务是构建,可以正常执行,生成$IMAGE镜像。


另外一个任务是kubernetes部署,设置为另外一个集群的deployment对象,指定好了容器。
图片

在自动触发了工作流之后,构建完成,部署提示 :
failed to update container image in default/deployments/test-nginx/container-87iber: Deployment.apps “test-nginx” is invalid: spec.template.spec.containers[0].image: Required value
应该是第二个部署任务没有获取到$IMAGE

部署任务里配置的是运行时输入,执行工作流时需要指定服务的镜像

您上面的截图是“部署任务”,而我这里是 kubernetes部署任务(本意是测试实现一个简单的生产发布任务)。



git触发工作流后,前一个build任务正常执行,而deploy任务失败(kubernetes部署任务配置菜单里面没有设置前一个任务的清单)。

明白了。目前 Kubernetes 部署任务配置里的容器名称不支持指定其他任务输出。

你的部署是要部署什么?是要部署前一步构建出来的镜像到指定的环境里吗?如果是这样的话,可以使用「部署」任务,在配置里指定为其他任务输出。

我是想在一个项目里面实现一个简单的生产发布任务,看来通过“Kubernetes 部署任务”是行不通了。刚才我又新建了一个托管项目,构建部署了一个镜像,发现在K8S yaml类型项目中的“Kubernetes 部署任务”中,指定的镜像原来是托管项目里面构建生成的镜像。不过新问题又来了,托管项目的构建部署流程不会 添加默认仓库的镜像拉取密钥,这个是不是为了避免对托管项目的侵入?