fixe ci pipleine
Some checks failed
CD - Build & Deploy / build-and-push (push) Has been cancelled
CD - Build & Deploy / package-helm (push) Has been cancelled
CD - Build & Deploy / deploy-staging (push) Has been cancelled
CD - Build & Deploy / deploy-production (push) Has been cancelled
CD - Build & Deploy / release (push) Has been cancelled
CI / test (3.11) (push) Has been cancelled
CI / test (3.12) (push) Has been cancelled
CI / security (push) Has been cancelled

This commit is contained in:
Ehsan.Asadi
2025-12-30 15:05:46 +03:30
parent d962e36c5c
commit 2f45e9a60e

View File

@@ -1,11 +1,8 @@
# Peikarband Platform - Woodpecker CI/CD Pipeline # Peikarband Platform - Woodpecker CI/CD Pipeline
# Harbor: hub.peikarband.ir # Harbor: hub.peikarband.ir
# مشکل: kaniko executor distroless است و /bin/sh ندارد
# راه‌حل: استفاده از image که هم shell دارد و هم kaniko executor
steps: steps:
build-and-push: build-and-push:
# استفاده از image که هم shell دارد (برای commands) و هم kaniko executor
image: gcr.io/kaniko-project/executor:debug image: gcr.io/kaniko-project/executor:debug
environment: environment:
HARBOR_USERNAME: HARBOR_USERNAME:
@@ -13,12 +10,19 @@ steps:
HARBOR_PASSWORD: HARBOR_PASSWORD:
from_secret: harbor_password from_secret: harbor_password
commands: commands:
- mkdir -p /kaniko/.docker # Debug: نمایش environment variables (بدون نمایش password)
- echo "HARBOR_USERNAME is set: $([ -n \"${HARBOR_USERNAME}\" ] && echo yes || echo no)"
- echo "HARBOR_PASSWORD is set: $([ -n \"${HARBOR_PASSWORD}\" ] && echo yes || echo no)"
# استفاده از fallback values اگر secrets تنظیم نشده باشند
- | - |
USERNAME="${HARBOR_USERNAME:-admin}" USERNAME="${HARBOR_USERNAME:-admin}"
PASSWORD="${HARBOR_PASSWORD:-5459ed7590d37656410fae38bdf59eb7ee33b68cd4c}" PASSWORD="${HARBOR_PASSWORD:-5459ed7590d37656410fae38bdf59eb7ee33b68cd4c}"
echo "Using username: ${USERNAME}"
# ساخت Docker config
mkdir -p /kaniko/.docker
AUTH=$(echo -n "${USERNAME}:${PASSWORD}" | base64 -w 0) AUTH=$(echo -n "${USERNAME}:${PASSWORD}" | base64 -w 0)
echo "{\"auths\":{\"hub.peikarband.ir\":{\"auth\":\"${AUTH}\"}}}" > /kaniko/.docker/config.json echo "{\"auths\":{\"hub.peikarband.ir\":{\"auth\":\"${AUTH}\"}}}" > /kaniko/.docker/config.json
echo "Docker config created successfully"
- /kaniko/executor - /kaniko/executor
--dockerfile=Dockerfile --dockerfile=Dockerfile
--context=dir://. --context=dir://.