ci: configura deploy automatico para k3s via forgejo

This commit is contained in:
Marcus 2026-01-23 15:54:49 -03:00
parent d2aacac608
commit 421a698283

View file

@ -6,10 +6,7 @@ on:
branches:
- dev
env:
# Define o IP padrão mas o script abaixo pode sobrescrever se necessário
DOCKER_HOST: tcp://127.0.0.1:2375
# Removido DOCKER_HOST TCP para usar o Socket padrão /var/run/docker.sock
jobs:
build-and-push:
runs-on: ubuntu-latest
@ -22,26 +19,22 @@ jobs:
curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-24.0.9.tgz | tar -xz --strip-components=1 -C /usr/local/bin/ docker/docker
chmod +x /usr/local/bin/docker
echo "Buscando o motor do Docker Sidecar..."
# Testa 127.0.0.1 e localhost para garantir o mapeamento do Pod
for target in "127.0.0.1" "localhost"; do
echo "Tentando conexão em $target:2375..."
if DOCKER_HOST=tcp://$target:2375 docker version &>/dev/null; then
echo "Docker conectado com sucesso em $target!"
echo "DOCKER_HOST=tcp://$target:2375" >> $GITHUB_ENV
echo "Testando conexão via Socket..."
# Tenta 5 vezes com pequeno intervalo caso o socket demore a montar
for i in {1..5}; do
if docker version &>/dev/null; then
echo "Docker conectado via Socket com sucesso!"
exit 0
fi
sleep 2
echo "Tentativa $i: Socket não disponível, aguardando..."
sleep 3
done
echo "Erro: O motor do Docker está online (visto nos logs), mas a rede interna do Pod falhou."
echo "Erro crítico: Arquivo /var/run/docker.sock não encontrado ou inacessível."
exit 1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
# Usa a variável de ambiente definida no passo anterior
endpoint: ${{ env.DOCKER_HOST }}
# O Buildx usará o socket padrão automaticamente
- name: Login to Forgejo Registry
uses: docker/login-action@v3