Update .forgejo/workflows/deploy.yaml

This commit is contained in:
bohessefm 2026-01-30 22:56:42 +00:00
parent 7dcd51881c
commit 060b488212

View file

@ -28,14 +28,15 @@ jobs:
- name: Set up Docker Buildx - name: Set up Docker Buildx
run: | run: |
# Limpeza e criação robusta do builder # Limpa builders antigos e força a criação de um novo para evitar cache de credenciais
docker buildx rm local-builder || true docker buildx rm local-builder || true
docker buildx create --name local-builder --driver docker-container docker buildx create --name local-builder --driver docker-container --use
docker buildx use local-builder
docker buildx inspect --bootstrap docker buildx inspect --bootstrap
- name: Login to Forgejo Registry - name: Login to Forgejo Registry
run: | run: |
# Limpa logins antigos antes de entrar com o novo token
docker logout ${{ env.REGISTRY }}
echo "${{ secrets.FORGEJO_TOKEN }}" | docker login ${{ env.REGISTRY }} -u bohessefm --password-stdin echo "${{ secrets.FORGEJO_TOKEN }}" | docker login ${{ env.REGISTRY }} -u bohessefm --password-stdin
- name: Build and Push Backend - name: Build and Push Backend
@ -47,6 +48,8 @@ jobs:
builder: local-builder builder: local-builder
provenance: false provenance: false
sbom: false sbom: false
# Adicionamos o carregamento explícito de imagens locais se necessário
# e garantimos que ele use o builder recém-criado
tags: | tags: |
${{ env.REGISTRY }}/bohessefm/gohorsejobs:latest ${{ env.REGISTRY }}/bohessefm/gohorsejobs:latest
${{ env.REGISTRY }}/bohessefm/gohorsejobs:${{ github.sha }} ${{ env.REGISTRY }}/bohessefm/gohorsejobs:${{ github.sha }}
@ -89,10 +92,8 @@ jobs:
chmod 600 $HOME/.kube/config chmod 600 $HOME/.kube/config
export KUBECONFIG=$HOME/.kube/config export KUBECONFIG=$HOME/.kube/config
# Garante o namespace
kubectl create namespace gohorsejobsdev --dry-run=client -o yaml | kubectl apply -f - kubectl create namespace gohorsejobsdev --dry-run=client -o yaml | kubectl apply -f -
# Segredos de ambiente
kubectl -n gohorsejobsdev delete secret backend-secrets --ignore-not-found kubectl -n gohorsejobsdev delete secret backend-secrets --ignore-not-found
kubectl -n gohorsejobsdev create secret generic backend-secrets \ kubectl -n gohorsejobsdev create secret generic backend-secrets \
--from-literal=MTU='${{ vars.MTU }}' \ --from-literal=MTU='${{ vars.MTU }}' \
@ -113,7 +114,6 @@ jobs:
--from-literal=AMQP_URL='${{ vars.AMQP_URL }}' \ --from-literal=AMQP_URL='${{ vars.AMQP_URL }}' \
--from-literal=DATABASE_URL='${{ vars.DATABASE_URL }}' --from-literal=DATABASE_URL='${{ vars.DATABASE_URL }}'
# Secret de autenticação para o K3s conseguir baixar a imagem
kubectl -n gohorsejobsdev create secret docker-registry forgejo-registry \ kubectl -n gohorsejobsdev create secret docker-registry forgejo-registry \
--docker-server=pipe.gohorsejobs.com \ --docker-server=pipe.gohorsejobs.com \
--docker-username=bohessefm \ --docker-username=bohessefm \
@ -122,10 +122,8 @@ jobs:
kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "forgejo-registry"}]}' -n gohorsejobsdev kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "forgejo-registry"}]}' -n gohorsejobsdev
# Deploy dos manifestos
kubectl apply -f k8s/dev/ -n gohorsejobsdev kubectl apply -f k8s/dev/ -n gohorsejobsdev
# Reinicia os pods para garantir a nova imagem e segredos
kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev || true kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev || true
kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev || true kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev || true