diff --git a/.woodpecker.yml b/.woodpecker.yml index 4b40069..2a17b80 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -1,31 +1,32 @@ -# Peikarband CI/CD - Woodpecker 2.x Standard +# Peikarband Platform - Woodpecker CI/CD Pipeline variables: - - &harbor_reg "harbor.peikarband.ir" - - &img_name "peikarband/landing" + - &harbor_registry "harbor.peikarband.ir" + - &image_name "peikarband/landing" + +# فیلتر کلی برای اجرا +when: + event: [push, tag, manual] steps: - # مرحله ساخت تصویر - docker-build: - image: plugins/docker - # این خط حیاتی است و فقط در حالت Trusted کار می‌کند - privileged: true + # مرحله ساخت با Kaniko (بدون نیاز به Privileged و تنظیمات Trusted) + build-and-push: + image: plugins/kaniko settings: - registry: *harbor_reg - repo: ${harbor_reg}/${img_name} + registry: *harbor_registry + repo: *image_name tags: - latest - - ${CI_COMMIT_SHA:0:8} + - ${CI_COMMIT_SHA} + # اطلاعات لاگین به Harbor username: from_secret: harbor_username password: from_secret: harbor_password - # استفاده از کش برای سرعت بالا - cache_from: - - ${harbor_reg}/${img_name}:latest + # مسیر داکرفایل (اگر در ریشه نیست تغییر دهید) + dockerfile: Dockerfile + context: . when: event: [push, tag, manual] -# تنظیمات کپی کد -clone: - git: - image: woodpeckerci/plugin-git \ No newline at end of file +# حذف بخش clone دستی برای جلوگیری از Hang در Image Pulling +# Woodpecker به صورت پیش‌فرض مرحله کلون را بهینه انجام می‌دهد \ No newline at end of file