From 7ab754a6c0a58d4f7de4a507a16a2c72be966bf9 Mon Sep 17 00:00:00 2001 From: bohessefm Date: Fri, 30 Jan 2026 19:07:04 +0000 Subject: [PATCH] Update .forgejo/workflows/deploy.yaml --- .forgejo/workflows/deploy.yaml | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/.forgejo/workflows/deploy.yaml b/.forgejo/workflows/deploy.yaml index 0f56c29..e4570c3 100644 --- a/.forgejo/workflows/deploy.yaml +++ b/.forgejo/workflows/deploy.yaml @@ -5,7 +5,7 @@ on: push: branches: - dev -#jobssss + jobs: build-and-push: runs-on: docker-ready @@ -16,7 +16,10 @@ jobs: shell: sh steps: - name: Install Dependencies - run: apk add --no-cache git docker-cli docker-cli-buildx nodejs + run: | + # Troca para um mirror mais rápido para evitar demora de minutos + sed -i 's/dl-cdn.alpinelinux.org/mirror.leaseweb.com/g' /etc/apk/repositories + apk add --no-cache git docker-cli docker-cli-buildx nodejs - name: Checkout code uses: actions/checkout@v4 @@ -66,10 +69,14 @@ jobs: steps: - name: Install Tools (Git & Kubectl) run: | + # Acelera a instalação no Alpine + sed -i 's/dl-cdn.alpinelinux.org/mirror.leaseweb.com/g' /etc/apk/repositories apk add --no-cache git curl - curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" - chmod +x kubectl - mv kubectl /usr/local/bin/ + + # Baixa o kubectl forçando o nome do arquivo de saída (-o) para evitar erro de formato + K8S_VERSION=$(curl -L -s https://dl.k8s.io/release/stable.txt) + curl -L -o /usr/local/bin/kubectl "https://dl.k8s.io/release/${K8S_VERSION}/bin/linux/amd64/kubectl" + chmod +x /usr/local/bin/kubectl - name: Checkout code uses: actions/checkout@v4 @@ -81,28 +88,28 @@ jobs: echo "${{ secrets.KUBECONFIG }}" > $HOME/.kube/config chmod 600 $HOME/.kube/config - # 2. DEBUG: Verifica se o arquivo tem conteúdo agora + # 2. DEBUG echo "--- Verificando tamanho do arquivo ---" ls -la $HOME/.kube/config - echo "--- Primeiras linhas (se vier vazio, o segredo no Forgejo está errado) ---" - head -n 2 $HOME/.kube/config # 3. Força o uso do arquivo e testa conexão export KUBECONFIG=$HOME/.kube/config - echo "Testando conexão com o cluster 86.48.29.139..." - kubectl cluster-info || { echo "ERRO: O arquivo de config está vazio ou o IP/Porta (6443) está bloqueado!"; exit 1; } + echo "Testando conexão com o cluster..." + kubectl cluster-info || { echo "ERRO: Falha na conexão com o cluster!"; exit 1; } - # 4. Aplica os Secrets e Manifestos + # 4. Aplica os Secrets 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 }}" + # 5. Aplica os Manifestos kubectl apply -f k8s/dev/ -n gohorsejobsdev - # 5. Restart para atualizar as imagens + # 6. Restart para atualizar as imagens kubectl -n gohorsejobsdev rollout restart deployment gohorse-backend-dev kubectl -n gohorsejobsdev rollout restart deployment gohorse-backoffice-dev + # 7. Aguarda o status da atualização kubectl -n gohorsejobsdev rollout status deployment gohorse-backend-dev \ No newline at end of file