ajustes novos
This commit is contained in:
parent
bf1bf808f4
commit
e5dc3f62d7
1 changed files with 19 additions and 7 deletions
|
|
@ -8,19 +8,19 @@ on:
|
||||||
env:
|
env:
|
||||||
REGISTRY: pipe.gohorsejobs.com
|
REGISTRY: pipe.gohorsejobs.com
|
||||||
IMAGE_NAMESPACE: bohessefm
|
IMAGE_NAMESPACE: bohessefm
|
||||||
# Usa o socket compartilhado via volume no Pod do K3s
|
# Conexão direta via Socket Unix (Zero latência e sem erros de rede)
|
||||||
DOCKER_HOST: unix:///run/docker.sock
|
DOCKER_HOST: unix:///run/docker.sock
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
# AJUSTE: Use as labels EXATAS do Runner ID 49 para ele "pescar" o job
|
# Match exato com as labels do Runner ID 50
|
||||||
runs-on: [self-hosted, linux-amd64]
|
runs-on: [self-hosted, linux-amd64]
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: sh
|
shell: sh
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Install Tools
|
- name: Install Build Tools
|
||||||
run: apk add --no-cache git docker-cli
|
run: apk add --no-cache git docker-cli
|
||||||
|
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
|
|
@ -49,17 +49,29 @@ jobs:
|
||||||
needs: build-and-push
|
needs: build-and-push
|
||||||
runs-on: [self-hosted, linux-amd64]
|
runs-on: [self-hosted, linux-amd64]
|
||||||
steps:
|
steps:
|
||||||
|
- name: Install Deploy Tools
|
||||||
|
run: |
|
||||||
|
# Instala kubectl e gettext (útil para envsubst se precisar no futuro)
|
||||||
|
apk add --no-cache curl kubectl git
|
||||||
|
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Deploy to K3s
|
- name: Deploy to K3s
|
||||||
run: |
|
run: |
|
||||||
# Como o Runner tem ClusterRole de admin, o kubectl funciona nativamente
|
# Cria 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 -
|
||||||
|
|
||||||
# Garante que os manifests do diretório sejam aplicados
|
# Aplica os manifestos da pasta k8s/dev
|
||||||
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
||||||
|
|
||||||
# Update das imagens para a versão específica do commit
|
# Faz o update das imagens nos deployments para o SHA do commit atual
|
||||||
|
# Isso garante que o Kubernetes baixe a imagem nova mesmo que a tag 'latest' não mude
|
||||||
kubectl -n gohorsejobsdev set image deployment/gohorse-backend-dev \
|
kubectl -n gohorsejobsdev set image deployment/gohorse-backend-dev \
|
||||||
backend=${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/gohorsejobs:${{ github.sha }}
|
backend=${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/gohorsejobs:${{ github.sha }}
|
||||||
|
|
||||||
kubectl -n gohorsejobsdev set image deployment/gohorse-backoffice-dev \
|
kubectl -n gohorsejobsdev set image deployment/gohorse-backoffice-dev \
|
||||||
backoffice=${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/backoffice:${{ github.sha }}
|
backoffice=${{ env.REGISTRY }}/${{ env.IMAGE_NAMESPACE }}/backoffice:${{ github.sha }}
|
||||||
|
|
||||||
|
# Aguarda o rollout completar
|
||||||
|
kubectl -n gohorsejobsdev rollout status deployment/gohorse-backend-dev --timeout=60s
|
||||||
Loading…
Reference in a new issue