From 2f3a5aef9acf01cc123a033a47259faf0b973089 Mon Sep 17 00:00:00 2001 From: bohessefm Date: Fri, 30 Jan 2026 22:36:05 +0000 Subject: [PATCH] Update .forgejo/workflows/deploy.yaml --- .forgejo/workflows/deploy.yaml | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/.forgejo/workflows/deploy.yaml b/.forgejo/workflows/deploy.yaml index 6da4dd8..a43cea9 100644 --- a/.forgejo/workflows/deploy.yaml +++ b/.forgejo/workflows/deploy.yaml @@ -26,16 +26,18 @@ jobs: with: fetch-depth: 1 + - name: Set up Docker Buildx + run: | + # Remove builders antigos para evitar erros de 'instância já existe' + docker buildx rm local-builder || true + # Cria um builder limpo usando o driver container (necessário para push/multi-platform) + docker buildx create --name local-builder --driver docker-container --use + docker buildx inspect --bootstrap + - name: Login to Forgejo Registry run: | echo "${{ secrets.FORGEJO_TOKEN }}" | docker login ${{ env.REGISTRY }} -u bohessefm --password-stdin - - name: Set up Docker Buildx - run: | - # Usando o driver default para evitar isolamento de rede do buildkit em modo container - docker buildx create --use --driver docker --name local-builder || docker buildx use local-builder - docker buildx inspect --bootstrap - - name: Build and Push Backend uses: docker/build-push-action@v5 with: @@ -45,7 +47,7 @@ jobs: provenance: false tags: | ${{ env.REGISTRY }}/bohessefm/gohorsejobs:latest - ${{ env.REGISTRY }}/bohessefm/gohorsejobs:${{ github.sha }} + ${{ env.REGISTRY }}/bohessefm/gohorsejobs:${{ github.sha }} - name: Build and Push Backoffice uses: docker/build-push-action@v5 @@ -56,7 +58,7 @@ jobs: provenance: false tags: | ${{ env.REGISTRY }}/bohessefm/backoffice:latest - ${{ env.REGISTRY }}/bohessefm/backoffice:${{ github.sha }} + ${{ env.REGISTRY }}/bohessefm/backoffice:${{ github.sha }} deploy-to-k3s: needs: build-and-push @@ -83,9 +85,6 @@ jobs: chmod 600 $HOME/.kube/config export KUBECONFIG=$HOME/.kube/config - echo "Testando conexão com o cluster..." - kubectl cluster-info || { echo "ERRO: Falha na conexão com o cluster!"; exit 1; } - # Criar namespace se não existir kubectl create namespace gohorsejobsdev --dry-run=client -o yaml | kubectl apply -f - @@ -117,15 +116,14 @@ jobs: --docker-password='${{ secrets.FORGEJO_TOKEN }}' \ --dry-run=client -o yaml | kubectl apply -f - - # Patch para garantir que o serviceaccount use o secret de pull + # Garante o ImagePullSecret na conta padrão kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "forgejo-registry"}]}' -n gohorsejobsdev # Aplica os Manifestos kubectl apply -f k8s/dev/ -n gohorsejobsdev - # Rollout status em vez de delete pod (mais seguro) - echo "Aguardando atualização dos deployments..." - kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev - kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev + # Rollout seguro para carregar variáveis novas + kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev || true + kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev || true - echo "Deploy finalizado!" \ No newline at end of file + echo "Deploy finalizado com sucesso!" \ No newline at end of file