fix(cd): Fix kustomize image replacement with full image names
The kustomize edit set image command requires the OLD_IMAGE to match exactly what's in the deployment YAML files, including the tag. Changes: - Use full image name with :IMAGE_TAG_PLACEHOLDER suffix - Update kustomization.yaml to match deployment YAML format Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
6
.github/workflows/cd.yaml
vendored
6
.github/workflows/cd.yaml
vendored
@@ -118,9 +118,11 @@ jobs:
|
||||
run: |
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
cd k8s/awoooi-prod
|
||||
# 使用 kustomize edit set image: OLD_IMAGE=NEW_IMAGE
|
||||
# OLD_IMAGE 必須與 deployment YAML 中的 image 欄位完全匹配
|
||||
kustomize edit set image \
|
||||
awoooi-web=${{ env.REGISTRY }}/${{ env.IMAGE_PREFIX }}-web:${{ steps.tag.outputs.tag }} \
|
||||
awoooi-api=${{ env.REGISTRY }}/${{ env.IMAGE_PREFIX }}-api:${{ steps.tag.outputs.tag }}
|
||||
"192.168.0.110:5000/library/web:IMAGE_TAG_PLACEHOLDER=${{ env.REGISTRY }}/${{ env.IMAGE_PREFIX }}-web:${{ steps.tag.outputs.tag }}" \
|
||||
"192.168.0.110:5000/library/api:IMAGE_TAG_PLACEHOLDER=${{ env.REGISTRY }}/${{ env.IMAGE_PREFIX }}-api:${{ steps.tag.outputs.tag }}"
|
||||
kubectl apply -k .
|
||||
|
||||
- name: Wait for rollout
|
||||
|
||||
@@ -27,8 +27,9 @@ resources:
|
||||
|
||||
# 映像配置 (Tag 由 CI 動態注入)
|
||||
# Harbor 金庫: 110 主機 (192.168.0.110:5000)
|
||||
# ⚠️ 重要: name 必須與 deployment YAML 中的 image 完全匹配 (含 tag)
|
||||
images:
|
||||
- name: 192.168.0.110:5000/library/web
|
||||
# newTag: 由 CI 注入,禁止在此寫死
|
||||
- name: 192.168.0.110:5000/library/api
|
||||
# newTag: 由 CI 注入,禁止在此寫死
|
||||
- name: 192.168.0.110:5000/library/web:IMAGE_TAG_PLACEHOLDER
|
||||
# newName + newTag 由 CI 透過 kustomize edit set image 注入
|
||||
- name: 192.168.0.110:5000/library/api:IMAGE_TAG_PLACEHOLDER
|
||||
# newName + newTag 由 CI 透過 kustomize edit set image 注入
|
||||
|
||||
Reference in New Issue
Block a user