Update .forgejo/workflows/deploy.yaml
This commit is contained in:
parent
8bf0fcfe6e
commit
2f3a5aef9a
1 changed files with 15 additions and 17 deletions
|
|
@ -26,16 +26,18 @@ jobs:
|
||||||
with:
|
with:
|
||||||
fetch-depth: 1
|
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
|
- name: Login to Forgejo Registry
|
||||||
run: |
|
run: |
|
||||||
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: 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
|
- name: Build and Push Backend
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
|
|
@ -83,9 +85,6 @@ jobs:
|
||||||
chmod 600 $HOME/.kube/config
|
chmod 600 $HOME/.kube/config
|
||||||
export KUBECONFIG=$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
|
# Criar namespace se não existir
|
||||||
kubectl create namespace gohorsejobsdev --dry-run=client -o yaml | kubectl apply -f -
|
kubectl create namespace gohorsejobsdev --dry-run=client -o yaml | kubectl apply -f -
|
||||||
|
|
||||||
|
|
@ -117,15 +116,14 @@ jobs:
|
||||||
--docker-password='${{ secrets.FORGEJO_TOKEN }}' \
|
--docker-password='${{ secrets.FORGEJO_TOKEN }}' \
|
||||||
--dry-run=client -o yaml | kubectl apply -f -
|
--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
|
kubectl patch serviceaccount default -p '{"imagePullSecrets": [{"name": "forgejo-registry"}]}' -n gohorsejobsdev
|
||||||
|
|
||||||
# Aplica os Manifestos
|
# Aplica os Manifestos
|
||||||
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
||||||
|
|
||||||
# Rollout status em vez de delete pod (mais seguro)
|
# Rollout seguro para carregar variáveis novas
|
||||||
echo "Aguardando atualização dos deployments..."
|
kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev || true
|
||||||
kubectl rollout restart deployment/gohorse-backend-dev -n gohorsejobsdev
|
kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev || true
|
||||||
kubectl rollout restart deployment/gohorse-backoffice-dev -n gohorsejobsdev
|
|
||||||
|
|
||||||
echo "Deploy finalizado!"
|
echo "Deploy finalizado com sucesso!"
|
||||||
Loading…
Reference in a new issue