我正在使用 k8s kustomize 设置图像并创建秘密文件
$(cd ./k8s/overlays/prod && kustomize edit set image gcr.io/PROJECT_ID/image:1.0)
这有效!
现在我尝试使用 来做kubectl kustomize同样的事情而不做cd . ./k8s/overlays/prod
是否可以将 Kustomize 插件内置到 kubectl 中?
与 kubectl相同,kustomize edit add secret而不执行cd进入目录?
我正在使用这个例子:
\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 base\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 kustomization.yaml\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 pod.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 dev\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 kustomization.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 kustomization.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 production\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 kustomization.yaml\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 staging\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 kustomization.yaml\nRun Code Online (Sandbox Code Playgroud)\n并在kustomization.yaml根目录中的文件中:
resources:\n- ./dev\n- ./staging\n- ./production\nRun Code Online (Sandbox Code Playgroud)\n我也有图像转换器代码dev, staging, production:
images:\n- name: my-app\n newName: gcr.io/my-platform/my-app\n\nRun Code Online (Sandbox Code Playgroud)\n为了构建单个部署清单,我使用:
\n(cd dev && kustomize edit set image my-app=gcr.io/my-platform/my-app:0.0.2 && kustomize build .)\nRun Code Online (Sandbox Code Playgroud)\n这很简单!
\n要为所有覆盖(开发、暂存、生产)构建部署清单,我使用:
\n(kustomize edit set image my-app=gcr.io/my-platform/my-app:0.0.2 && kustomize build .)\nRun Code Online (Sandbox Code Playgroud)\n它使用kustomization.yaml包含所有资源(开发、暂存、生产)的根目录。
它确实有效,并且最终版本打印在控制台上,但没有图像标签。
\n看来kusotmize edit …
我已使用此处提到[skip ci]的命令跳过 GitHub 操作中的工作流程运行,在使用 PAT 在 CI aciton 中构建图像后,我正在执行自动提交,效果非常好!
但由于提交注释包含该[skip ci]命令,并且在此之后如果我创建新的标签版本,则不会触发 CI 工作流程,因为[skip ci].
有什么方法可以排除[skip ci]for 标签推送事件并仅将其保留在运行 ci 操作的分支之一吗?
GitHub 操作中的自动提交:
on: push
jobs:
ci:
runs-on: ubuntu-latest
steps:
- name: build and push image
- name: update image tag
- name: Commit changes
run: |
git config --global user.name 'abc'
git config --global user.email 'xyz@users.noreply.github.com'
git remote add origin https://github.com/${{ github.repository }}
git config --global push.default current
git remote set-url origin …Run Code Online (Sandbox Code Playgroud)