ci: configura deploy automatico para k3s
This commit is contained in:
parent
7364b6d2ce
commit
05fc1977a8
1 changed files with 14 additions and 9 deletions
|
|
@ -10,14 +10,17 @@ jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: docker-ready
|
runs-on: docker-ready
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Prepare Environment (Fix 404 & Docker)
|
||||||
uses: actions/checkout@v4 # Agora funciona porque o ambiente tem Node
|
|
||||||
|
|
||||||
- name: Install Docker Tools
|
|
||||||
run: |
|
run: |
|
||||||
# Como estamos em uma imagem Node Alpine, instalamos o CLI do Docker
|
# Instalamos o Git para que o Checkout use 'git clone' em vez de API REST
|
||||||
# para que ele possa dar ordens ao container de Docker (Sidecar)
|
# Instalamos o Docker CLI para falar com o sidecar
|
||||||
apk add --no-cache docker-cli docker-cli-buildx
|
apk add --no-cache git docker-cli docker-cli-buildx
|
||||||
|
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
# Força o checkout a usar o binário git instalado acima
|
||||||
|
fetch-depth: 1
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
run: |
|
run: |
|
||||||
|
|
@ -60,6 +63,10 @@ jobs:
|
||||||
needs: build-and-push
|
needs: build-and-push
|
||||||
runs-on: docker-ready
|
runs-on: docker-ready
|
||||||
steps:
|
steps:
|
||||||
|
# Repetimos a instalação do git/kubectl se necessário no segundo job
|
||||||
|
- name: Prepare Deploy Environment
|
||||||
|
run: apk add --no-cache git
|
||||||
|
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
|
@ -71,14 +78,12 @@ jobs:
|
||||||
|
|
||||||
- name: Update Secrets and Apply
|
- name: Update Secrets and Apply
|
||||||
run: |
|
run: |
|
||||||
# Recriando o segredo com as variáveis do Forgejo
|
|
||||||
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=DATABASE_URL="${{ vars.DATABASE_URL }}" \
|
--from-literal=DATABASE_URL="${{ vars.DATABASE_URL }}" \
|
||||||
--from-literal=JWT_SECRET="${{ vars.JWT_SECRET }}" \
|
--from-literal=JWT_SECRET="${{ vars.JWT_SECRET }}" \
|
||||||
--from-literal=MTU="${{ vars.MTU }}"
|
--from-literal=MTU="${{ vars.MTU }}"
|
||||||
|
|
||||||
# Aplica os manifestos
|
|
||||||
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
kubectl apply -f k8s/dev/ -n gohorsejobsdev
|
||||||
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backend-dev
|
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backend-dev
|
||||||
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backoffice-dev
|
kubectl -n gohorsejobsdev rollout restart deployment gohorse-backoffice-dev
|
||||||
Loading…
Reference in a new issue