π CI/CD - Deploy Automatico
Flusso di Deploymentβ
git push (main) β Cloud Build β Artifact Registry β GKE
π Come Fare Deployβ
Deploy Tutti i Serviziβ
gcloud builds submit --config=infra/cloudbuild-all.yaml
Deploy Singolo Servizioβ
gcloud builds submit --config=infra/cloudbuild.yaml --substitutions=_SERVICE=auth
Deploy K8s Manualeβ
# Connetti al cluster
gcloud container clusters get-credentials visla-k8s-cluster \
--zone europe-west8-a --project visla-k8s-2026
# Usa lo script
./deploy_k8s.sh
π§ Configurare CI/CD con GitHubβ
Step 1: Connetti Repositoryβ
# Console GCP β Cloud Build β Triggers β Connect Repository
Step 2: Crea Triggerβ
gcloud builds triggers create github \
--name="deploy-on-push" \
--repo-name="visla-platform" \
--repo-owner="TUO_OWNER" \
--branch-pattern="^main$" \
--build-config="infra/cloudbuild-all.yaml"
Step 3: Permessiβ
PROJECT_ID="visla-k8s-2026"
PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projectNumber)')
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member="serviceAccount:$PROJECT_NUMBER@cloudbuild.gserviceaccount.com" \
--role="roles/container.developer"
π Monitorare Buildβ
# Lista build recenti
gcloud builds list --limit=5
# Log specifico
gcloud builds log BUILD_ID --stream
β±οΈ Rollbackβ
# Rollback ultimo deploy
kubectl rollout undo deployment/auth
# Storia deployment
kubectl rollout history deployment/auth