name: K3s Auto-Deploy on: push: branches: - dev jobs: build-and-deploy: runs-on: self-hosted steps: - name: Checkout Code (Nativo) run: | rm -rf * git clone -b dev https://${{ github.actor }}:${{ secrets.FORGEJO_TOKEN }}@git.saveinmed.com.br/${{ github.repository }}.git . - name: Build and Push run: | # Instala a CLI do Docker para poder falar com o motor interno apk add --no-cache docker-cli # Aponta para o container 'docker' (sidecar) que roda no mesmo Pod export DOCKER_HOST=tcp://localhost:2375 # Login no registro usando o Docker interno echo "${{ secrets.FORGEJO_TOKEN }}" | docker login git.saveinmed.com.br -u ${{ github.actor }} --password-stdin # Build e Push docker build -t git.saveinmed.com.br/${{ github.repository }}:latest ./backend docker push git.saveinmed.com.br/${{ github.repository }}:latest - name: Deploy run: | # Instala o kubectl caso ele não exista na imagem do runner apk add --no-cache kubectl # Aplica as mudanças no cluster kubectl apply -f k8s/ kubectl rollout restart deployment/photum-backend -n photum