🎯 New Structure: - landing/ (root) - Only Makefile, .gitignore, .woodpecker.yml - helm/ - Kubernetes deployment (with argocd inside chart) - docker/ - Docker build configs - peikarband/ - All source code (src, tests, assets, config, tools, docs) ✅ Changes: - Moved Docker files: build/docker/ → docker/ - Moved Helm charts: deploy/helm/ → helm/ - Moved ArgoCD: deploy/argocd/ → helm/peikarband/argocd/ - Moved all source code to peikarband/ - Removed duplicate files (7 files) - Removed old empty directories 🐳 Docker Fixes: - Added npm retry configuration (fetch-retry-mintimeout, etc.) - Added 3-attempt retry mechanism for reflex export - Fixed ECONNREFUSED errors - Updated paths for new structure 📦 Config Updates: - Makefile: Updated all paths (docker/, helm/, peikarband/) - .woodpecker.yml: Updated dockerfile and context paths - .gitignore: Updated data/ path 🧪 Tests: - ✓ Helm lint passes - ✓ All paths validated - ✓ Structure verified 📊 Result: - Before: 20+ files in root, scattered structure - After: 3 files + 3 directories, clean and organized - Production-ready ✨
46 lines
1.4 KiB
YAML
46 lines
1.4 KiB
YAML
|
|
pipeline:
|
|
publish_landing:
|
|
image: woodpeckerci/plugin-docker-buildx
|
|
settings:
|
|
# تنظیمات ریجیستری Harbor
|
|
registry: hub.peikarband.ir
|
|
repo: hub.peikarband.ir/peikarband/landing
|
|
username:
|
|
from_secret: HARBOR_USERNAME
|
|
password:
|
|
from_secret: HARBOR_PASSWORD
|
|
|
|
# تگگذاری
|
|
tags:
|
|
- latest
|
|
- ${CI_COMMIT_SHA:0:8}
|
|
|
|
dockerfile: docker/Dockerfile
|
|
context: peikarband/
|
|
platforms: linux/amd64
|
|
|
|
build_args:
|
|
- VERSION=${CI_COMMIT_SHA:0:8}
|
|
- BUILD_DATE=${CI_PIPELINE_CREATED}
|
|
- PYTHON_VERSION=3.11
|
|
- NODE_VERSION=20
|
|
|
|
labels:
|
|
- org.opencontainers.image.created=${CI_PIPELINE_CREATED}
|
|
- org.opencontainers.image.source=${CI_REPO_LINK}
|
|
- org.opencontainers.image.url=${CI_REPO_LINK}
|
|
- org.opencontainers.image.revision=${CI_COMMIT_SHA}
|
|
- org.opencontainers.image.version=${CI_COMMIT_SHA:0:8}
|
|
- org.opencontainers.image.title=Peikarband Landing
|
|
- org.opencontainers.image.description=Peikarband hosting platform landing page
|
|
|
|
cache: inline
|
|
provenance: true
|
|
push: true
|
|
|
|
when:
|
|
- event: [push, tag, manual]
|
|
branch: main # معمولاً فقط روی برنچ اصلی پوش انجام میشود
|
|
|
|
timeout: 30m |