From 5eb12e717057c82d9f5c3c29faae074ab6e3da9f Mon Sep 17 00:00:00 2001 From: erjemin Date: Tue, 24 Mar 2026 17:00:35 +0300 Subject: [PATCH] =?UTF-8?q?add:=20=D0=BC=D0=B0=D0=BD=D0=B8=D1=84=D0=B5?= =?UTF-8?q?=D1=81=D1=82=20=D0=B4=D0=BB=D1=8F=20CI/CD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/docker-publish.yaml | 55 ++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .gitea/workflows/docker-publish.yaml diff --git a/.gitea/workflows/docker-publish.yaml b/.gitea/workflows/docker-publish.yaml new file mode 100644 index 0000000..5e75c39 --- /dev/null +++ b/.gitea/workflows/docker-publish.yaml @@ -0,0 +1,55 @@ +name: Build and Push LPON-site + +on: + push: + # Запускать только при создании тега, начинающегося с 'v' (например, v1.0.0) + tags: + - 'v*' + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + # Генерируем метаданные (теги) для Docker + - name: Docker meta + id: meta + uses: docker/metadata-action@v4 + with: + # Важно: используем gitea.repository + images: git.cube2.ru/${{ gitea.repository }} + tags: | + type=ref,event=tag + type=raw,value=latest,enable=${{ gitea.ref_type == 'tag' }} + + - name: Login to Gitea Registry + uses: docker/login-action@v2 + with: + registry: git.cube2.ru + # Важно: используем gitea.actor + username: ${{ gitea.actor }} + password: ${{ secrets.REGISTRY_PASSWORD }} + + - name: Build and push image LPON-site + uses: docker/build-push-action@v4 + with: + context: . + # platforms: linux/amd64 + platforms: linux/amd64,linux/arm64 + push: true + # Используем теги, сгенерированные шагом meta (v0.1.0 и latest) + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + # Кэширование для ускорения повторных сборок + cache-from: type=gha + cache-to: type=gha,mode=max + # Увеличиваем тайм-аут на случай медленного интернета + timeout: 1800 # 30 минут