This commit is contained in:
2025-08-04 23:49:32 +09:00
parent 6cc215537c
commit b45e7ef7e7

View File

@ -6,7 +6,7 @@ metadata:
spec:
workspaces:
- name: docker-config
description: Docker registry 인증 정보를 담은 secret
params:
- name: git-url
type: string
@ -45,35 +45,47 @@ spec:
# else
# echo "[ERROR] Docker config 파일(.dockerconfigjson) 없음"
# fi
- name: prepare-docker-config
image: stedolan/jq
# - name: prepare-docker-config
# image: stedolan/jq
# script: |
# #!/bin/sh
# set -e
# echo "==== [INFO] Docker config 파일 준비 ===="
# ls -al /workspace/docker-config
# # 임시 쓰기 가능 경로 생성
# mkdir -p /workspace/tmp-config
# if [ -f /workspace/docker-config/.dockerconfigjson ]; then
# echo "[INFO] dockerconfigjson 내용 읽기"
# cat /workspace/docker-config/.dockerconfigjson | jq . > /workspace/tmp-config/config.json
# echo "[INFO] config.json 변환 완료"
# else
# echo "[ERROR] Docker config 파일(.dockerconfigjson) 없음"
# fi
# 3. Debugging - Check mounted secret before build
- name: debug-check-secret
image: alpine
script: |
#!/bin/sh
set -e
echo "==== [INFO] Docker config 파일 준비 ===="
ls -al /workspace/docker-config
# 임시 쓰기 가능 경로 생성
mkdir -p /workspace/tmp-config
if [ -f /workspace/docker-config/.dockerconfigjson ]; then
echo "[INFO] dockerconfigjson 내용 읽기"
cat /workspace/docker-config/.dockerconfigjson | jq . > /workspace/tmp-config/config.json
echo "[INFO] config.json 변환 완료"
else
echo "[ERROR] Docker config 파일(.dockerconfigjson) 없음"
fi
echo "==== [DEBUG] Harbor Dockerconfig 파일 목록 ===="
ls -al /workspace/docker-config || true
echo "==== [DEBUG] Volumes 목록 확인 ===="
ls -al /kaniko || true
echo "==== [INFO] 3분간 대기 - kubectl exec로 진입 가능 ===="
sleep 180
echo "==== [INFO] 대기 종료 ===="
# 4. Kaniko Build & Push
- name: build-and-push
image: gcr.io/kaniko-project/executor:latest
volumeMounts:
- name: harbor-dockerconfig
mountPath: /kaniko/.docker/
readOnly: true
# env:
# - name: DOCKER_CONFIG
# value: /workspace/docker-config
# volumeMounts:
# - name: docker-config
# mountPath: /kaniko/.docker/
# readOnly: true
env:
- name: DOCKER_CONFIG
value: /workspace/docker-config
args:
- --dockerfile=/workspace/source/Dockerfile
- --context=/workspace/source