Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Implement applications using Google Cloud Platform (GCP) services. Use when building on GCP infrastructure, selecting compute/storage/database services, designing data analytics pipelines, implementing ML workflows, or architecting cloud-native applications with BigQuery, Cloud Run, GKE, Vertex AI, and other GCP services.
.claude/skills/ancoleman-deploying-on-gcp/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 92% | 0% |
| case-15 | ✓→✓ | = Same ✓ | 295% | 0% |
| case-20 | ✓→✓ | = Same ✓ | 706% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 174% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 132% | 0% |
Build applications and infrastructure using Google Cloud Platform services with appropriate service selection, architecture patterns, and best practices.
This skill provides decision frameworks and implementation patterns for Google Cloud Platform (GCP) services across compute, storage, databases, data analytics, machine learning, networking, and security. It guides service selection based on workload requirements and demonstrates production-ready patterns using Terraform, Python SDKs, and gcloud CLI.
Use this skill when:
Compute Options:
Storage & Databases:
Data & Analytics:
AI/ML Services:
Need to run code in GCP?
├─ HTTP service?
│ ├─ YES → Stateless?
│ │ ├─ YES → Cloud Run (auto-scale to zero)
│ │ └─ NO → Need Kubernetes? → GKE | Compute Engine
│ └─ NO (Event-driven)
│ ├─ Simple function? → Cloud Functions
│ └─ Complex orchestration? → GKE | Cloud Run JobsSelection Guide:
Choose database type:
├─ Relational (SQL)
│ ├─ Multi-region required? → Cloud Spanner
│ ├─ PostgreSQL + high performance? → AlloyDB
│ └─ Standard RDBMS → Cloud SQL (PostgreSQL/MySQL/SQL Server)
│
├─ Document (NoSQL)
│ ├─ Mobile/web with offline sync? → Firestore
│ └─ Flexible schema, no offline? → MongoDB Atlas (Marketplace)
│
├─ Key-Value
│ ├─ Time-series or IoT data? → Bigtable
│ └─ Caching layer? → Memorystore (Redis/Memcached)
│
└─ Analytics
└─ Petabyte-scale SQL analytics → BigQueryStorage type needed?
├─ Objects/Files
│ ├─ Frequent access → Cloud Storage (Standard)
│ ├─ Monthly access → Cloud Storage (Nearline)
│ ├─ Quarterly access → Cloud Storage (Coldline)
│ └─ Yearly access → Cloud Storage (Archive)
│
├─ Block storage → Persistent Disk (SSD/Standard/Extreme)
└─ Shared filesystem → Filestore (NFS)| Category | GCP | AWS | Azure | |----------|-----|-----|-------| | Serverless Containers | Cloud Run | Fargate | Container Instances | | Kubernetes | GKE | EKS | AKS | | Functions | Cloud Functions | Lambda | Functions | | VMs | Compute Engine | EC2 | Virtual Machines | | Object Storage | Cloud Storage | S3 | Blob Storage | | SQL Database | Cloud SQL | RDS | SQL Database | | NoSQL Document | Firestore | DynamoDB | Cosmos DB | | Data Warehouse | BigQuery | Redshift | Synapse | | Messaging | Pub/Sub | SNS/SQS | Service Bus | | ML Platform | Vertex AI | SageMaker | Machine Learning |
Use Case: Stateless HTTP API with database and caching
Architecture:
Internet → Cloud Load Balancer → Cloud Run → Cloud SQL (PostgreSQL)
→ Memorystore (Redis)
→ Cloud StorageKey Services:
For detailed Terraform configuration, see references/compute-services.md.
Use Case: Real-time event processing and analytics
Architecture:
Data Sources → Pub/Sub → Dataflow → BigQuery → Looker/Tableau
↓
Cloud Storage (staging)Key Services:
For BigQuery optimization patterns, see references/data-analytics.md.
Use Case: End-to-end machine learning workflow
Architecture:
Training Data (GCS) → Vertex AI Training → Model Registry → Vertex AI Endpoints
↓
PredictionsKey Services:
For ML implementation examples, see references/ml-ai-services.md.
Use Case: Complex orchestration with multiple services
Architecture:
Internet → Cloud Load Balancer → GKE Cluster
├─ Ingress Controller
├─ Service Mesh (optional)
├─ Microservice A
├─ Microservice B
└─ Microservice CKey Features:
For GKE setup and best practices, see references/compute-services.md.
Compute:
Storage:
Data:
SELECT *)For detailed cost strategies, see references/cost-optimization.md.
IAM Best Practices:
Network Security:
Data Security:
For comprehensive security patterns, see references/security-iam.md.
Multi-Region Strategy:
Backup and Disaster Recovery:
For networking and HA patterns, see references/networking.md.
bash# Project management gcloud projects list gcloud config set project PROJECT_ID # Cloud Run gcloud run deploy SERVICE_NAME --image IMAGE_URL --region REGION gcloud run services list # GKE gcloud container clusters create-auto CLUSTER_NAME --region REGION gcloud container clusters get-credentials CLUSTER_NAME --region REGION # Cloud Storage gsutil mb gs://BUCKET_NAME gsutil cp FILE gs://BUCKET_NAME/ # BigQuery bq mk DATASET_NAME bq query --use_legacy_sql=false 'SELECT * FROM dataset.table LIMIT 10' # Cloud SQL gcloud sql instances create INSTANCE_NAME --database-version=POSTGRES_15 --region=REGION gcloud sql connect INSTANCE_NAME --user=postgres
For complete command reference, see examples/gcloud/common-commands.sh.
python# Cloud Storage from google.cloud import storage client = storage.Client() bucket = client.bucket('my-bucket') blob = bucket.blob('file.txt') blob.upload_from_filename('local-file.txt') # BigQuery from google.cloud import bigquery client = bigquery.Client() query = "SELECT * FROM `project.dataset.table` LIMIT 10" results = client.query(query).result() # Pub/Sub from google.cloud import pubsub_v1 publisher = pubsub_v1.PublisherClient() topic_path = publisher.topic_path('project', 'topic-name') future = publisher.publish(topic_path, b'message data')
For complete Python examples, see examples/python/.
hcl# Provider configuration terraform { required_providers { google = { source = "hashicorp/google" version = "~> 5.0" } } } provider "google" { project = "my-project-id" region = "us-central1" } # Cloud Run service resource "google_cloud_run_service" "api" { name = "api-service" location = "us-central1" template { spec { containers { image = "gcr.io/project/api:latest" } } } }
For complete Terraform examples, see examples/terraform/.
| Requirement | Recommended Service | Alternative | |-------------|---------------------|-------------| | Stateless HTTP API | Cloud Run | App Engine | | Complex orchestration | GKE Autopilot | GKE Standard | | Event processing | Cloud Functions | Cloud Run Jobs | | Object storage | Cloud Storage | N/A | | Relational database | Cloud SQL | AlloyDB, Spanner | | NoSQL document | Firestore | MongoDB Atlas | | Time-series data | Bigtable | N/A | | Data warehouse | BigQuery | N/A | | Message queue | Pub/Sub | N/A | | Stream processing | Dataflow | Dataproc | | Batch processing | Dataflow | Dataproc | | ML training | Vertex AI | Custom on GKE | | Caching | Memorystore Redis | N/A |
Related Skills:
examples/terraform/)For detailed documentation:
references/compute-services.md for Cloud Run, GKE, Cloud Functions, Compute Engine, and App Engine patternsreferences/storage-databases.md for detailed service selection and configurationreferences/data-analytics.md for BigQuery, Pub/Sub, Dataflow, and Dataproc patternsreferences/ml-ai-services.md for Vertex AI, AutoML, and pre-trained API usagereferences/networking.md for VPC, Load Balancing, CDN, and Cloud Armor patternsreferences/security-iam.md for IAM patterns, Workload Identity, and Secret Managerreferences/cost-optimization.md for detailed cost reduction strategiesFor working examples:
examples/terraform/ for infrastructure templatesexamples/python/ for client library examplesexamples/gcloud/common-commands.sh for command referenceWhen choosing GCP:
GCP's unique advantages:
Multi-region recommendations:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-15 | pass→pass | 8,429 | 11,729 | +39% | 1 | 1 | 0% | 1,454 | 5,737 | +295% | 0 | 0 | — |
case-20 | pass→pass | 3,793 | 4,917 | +30% | 1 | 1 | 0% | 560 | 4,512 | +706% | 0 | 0 | — |
case-01 | fail→pass | 20,053 | 16,743 | -17% | 1 | 1 | 0% | 3,412 | 6,568 | +92% | 0 | 0 | — |
case-02 | pass→pass | 12,274 | 9,568 | -22% | 1 | 1 | 0% | 1,931 | 5,291 | +174% | 0 | 0 | — |
case-03 | pass→pass | 15,604 | 11,271 | -28% | 1 | 1 | 0% | 2,417 | 5,617 | +132% | 0 | 0 | — |
case-04 | pass→pass | 11,496 | 8,632 | -25% | 1 | 1 | 0% | 1,977 | 5,182 | +162% | 0 | 0 | — |
case-05 | pass→pass | 8,988 | 6,164 | -31% | 1 | 1 | 0% | 1,450 | 4,612 | +218% | 0 | 0 | — |
case-06 | pass→pass | 11,612 | 12,964 | +12% | 1 | 1 | 0% | 2,220 | 6,329 | +185% | 0 | 0 | — |
case-07 | pass→pass | 5,161 | 8,185 | +59% | 1 | 1 | 0% | 916 | 5,324 | +481% | 0 | 0 | — |
case-08 | pass→pass | 5,480 | 5,389 | -2% | 1 | 1 | 0% | 963 | 4,786 | +397% | 0 | 0 | — |
case-09 | pass→pass | 4,708 | 4,926 | +5% | 1 | 1 | 0% | 803 | 4,560 | +468% | 0 | 0 | — |
case-10 | pass→pass | 4,887 | 5,717 | +17% | 1 | 1 | 0% | 794 | 4,749 | +498% | 0 | 0 | — |
case-11 | pass→pass | 10,771 | 11,694 | +9% | 1 | 1 | 0% | 1,814 | 5,749 | +217% | 0 | 0 | — |
case-12 | pass→pass | 12,914 | 7,873 | -39% | 1 | 1 | 0% | 2,096 | 5,112 | +144% | 0 | 0 | — |
case-13 | pass→pass | 5,328 | 5,912 | +11% | 1 | 1 | 0% | 841 | 4,683 | +457% | 0 | 0 | — |
case-14 | pass→pass | 7,069 | 6,268 | -11% | 1 | 1 | 0% | 827 | 4,786 | +479% | 0 | 0 | — |
case-16 | pass→pass | 4,471 | 7,438 | +66% | 1 | 1 | 0% | 727 | 4,926 | +578% | 0 | 0 | — |
case-17 | pass→pass | 3,250 | 8,583 | +164% | 1 | 1 | 0% | 420 | 5,241 | +1148% | 0 | 0 | — |
case-18 | pass→pass | 5,789 | 7,448 | +29% | 1 | 1 | 0% | 936 | 4,841 | +417% | 0 | 0 | — |
case-19 | pass→pass | 12,227 | 7,373 | -40% | 1 | 1 | 0% | 1,051 | 4,894 | +366% | 0 | 0 | — |
case-21 | pass→pass | 16,343 | 21,577 | +32% | 1 | 1 | 0% | 2,944 | 5,969 | +103% | 0 | 0 | — |
case-22 | pass→pass | 19,707 | 18,674 | -5% | 1 | 1 | 0% | 3,109 | 6,917 | +122% | 0 | 0 | — |
case-23 | pass→pass | 8,105 | 9,027 | +11% | 1 | 1 | 0% | 1,272 | 4,879 | +284% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +4 percentage points is the difference between those two pass rates over the 23 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.