name: Deploy NestJS API on: [push] jobs: build-and-push-deploy: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: Login no Harbor run: | echo "${{ secrets.HARBOR_PASSWORD }}" | docker login 172.35.0.216 -u ${{ secrets.HARBOR_USERNAME }} --password-stdin - name: Build e Push run: | # Usando o SHA do commit para manter o histórico no Harbor TAG=${{ gitea.sha }} docker build -t 172.35.0.216/library/api-teste:$TAG . docker tag 172.35.0.216/library/api-teste:$TAG 172.35.0.216/library/api-teste:latest docker push 172.35.0.216/library/api-teste:$TAG docker push 172.35.0.216/library/api-teste:latest - name: Notificar Portainer via Webhook run: | # O Webhook avisa o Portainer para puxar a nova imagem imediatamente curl -X POST "${{ secrets.PORTAINER_WEBHOOK_URL }}"