name: Build and Push API on: push: branches: - master jobs: build-and-push: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 # 1. Smoke test – csak ellenőrizzük, hogy látjuk a docker socketet - name: Docker smoke test run: docker ps -a # 2. docker login – itt majd a repó Secretjeit fogjuk használni - name: Docker login run: | echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login git.petyi.eu -u "${{ secrets.REGISTRY_USER }}" --password-stdin # 3. docker build – egyszerűen latest taggel - name: Docker build run: | docker build -t git.petyi.eu/szakdolgozat/api:latest . # 4. docker push – ugyanaz az image - name: Docker push run: | docker push git.petyi.eu/szakdolgozat/api:latest - name: Set up kubeconfig env: KUBECONFIG: /tmp/kubeconfig run: | echo "${{ secrets.KUBECONFIG_B64 }}" | base64 -d > "$KUBECONFIG" echo "==== kubeconfig ====" cat "$KUBECONFIG" - name: Kubernetes smoke test env: KUBECONFIG: /tmp/kubeconfig run: | kubectl get nodes -o wide - name: Rollout restart API deployment env: KUBECONFIG: /tmp/kubeconfig run: | kubectl rollout restart deployment/telefonkonyv-api -n szakdolgozat