# Peikarband Platform - Woodpecker CI/CD Pipeline # Harbor: hub.peikarband.ir # مشکل: kaniko executor distroless است و /bin/sh ندارد # راه‌حل: استفاده از image که هم shell دارد و هم kaniko executor steps: build-and-push: # استفاده از image که هم shell دارد (برای commands) و هم kaniko executor image: gcr.io/kaniko-project/executor:debug environment: HARBOR_USERNAME: from_secret: harbor_username HARBOR_PASSWORD: from_secret: harbor_password commands: - mkdir -p /kaniko/.docker - | USERNAME="${HARBOR_USERNAME:-admin}" PASSWORD="${HARBOR_PASSWORD:-5459ed7590d37656410fae38bdf59eb7ee33b68cd4c}" AUTH=$(echo -n "${USERNAME}:${PASSWORD}" | base64 -w 0) echo "{\"auths\":{\"hub.peikarband.ir\":{\"auth\":\"${AUTH}\"}}}" > /kaniko/.docker/config.json - /kaniko/executor --dockerfile=Dockerfile --context=dir://. --destination=hub.peikarband.ir/peikarband/landing:latest --destination=hub.peikarband.ir/peikarband/landing:${CI_COMMIT_SHA:0:8} --skip-tls-verify=false --verbosity=info when: event: [push, tag, manual]