ci: configura deploy automatico para k3s via forgejo

This commit is contained in:
Marcus 2026-01-23 16:30:55 -03:00
parent c1e47a1616
commit 7364b6d2ce

View file

@ -8,14 +8,20 @@ on:
jobs:
build-and-push:
runs-on: docker-ready # <--- Label que configuramos no passo acima
runs-on: docker-ready
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v4 # Agora funciona porque o ambiente tem Node
- name: Install Docker Tools
run: |
# Como estamos em uma imagem Node Alpine, instalamos o CLI do Docker
# para que ele possa dar ordens ao container de Docker (Sidecar)
apk add --no-cache docker-cli docker-cli-buildx
- name: Set up Docker Buildx
run: |
# O Buildx já está instalado na imagem docker:24-cli!
# Inicializa o builder usando o socket compartilhado
docker buildx create --use --driver docker-container --name local-builder || docker buildx use local-builder
docker buildx inspect --bootstrap
@ -63,9 +69,16 @@ jobs:
method: kubeconfig
kubeconfig: ${{ secrets.KUBECONFIG }}
- name: Apply K8s Manifests
- name: Update Secrets and Apply
run: |
# Seus comandos de segredos e apply aqui...
# Recriando o segredo com as variáveis do Forgejo
kubectl -n gohorsejobsdev delete secret backend-secrets --ignore-not-found
kubectl -n gohorsejobsdev create secret generic backend-secrets \
--from-literal=DATABASE_URL="${{ vars.DATABASE_URL }}" \
--from-literal=JWT_SECRET="${{ vars.JWT_SECRET }}" \
--from-literal=MTU="${{ vars.MTU }}"
# Aplica os manifestos
kubectl apply -f k8s/dev/ -n gohorsejobsdev
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backend-dev
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backoffice-dev