Workload Manager Basics
GoogleOfficialPublished by Google
- Skill
- Tool integration
- Cloud and DevOps
- Apache-2.0
- Low risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Workload Manager Basics provides the necessary guidance and code patterns to interact with Google Cloud Workload Manager. Since there is no dedicated CLI or MCP server for this service, this skill enables users to programmatically define, run, and inspect workload evaluations against Google Cloud best practices, including SAP and SQL Server configurations. It covers the full lifecycle from listing available rules to creating evaluation resources and exporting results.
What it does
- Lists available best-practice rules for Google Cloud workloads
- Creates and updates evaluation resources for specific project or organization scopes
- Executes workload evaluations and retrieves validation results
- Provides patterns for exporting evaluation findings to BigQuery
- Offers Python client library examples for automating Workload Manager tasks
- Details IAM role requirements and prerequisites for API access
When to use it
- When you need to validate enterprise workloads against Google Cloud best practices
- When you require custom organizational rule evaluations
- When you need to automate Workload Manager operations via Python or REST API
- When you need to review violations and findings from automated scans
Advantages
- Enables programmatic management of workload evaluations
- Supports both project-level and organization-level evaluation scopes
- Provides clear guidance on using official client libraries
- Includes patterns for integrating with BigQuery for data analysis
Usage examples
- “List all available rules for SQL Server evaluations in my project.”
- The agent provides a Python script using the WorkloadManagerClient to list rules filtered by the SQL_SERVER evaluation type.
- “How do I create a daily evaluation for general best practices at the organization level?”
- The agent provides a Python code snippet demonstrating how to define an evaluation resource with a cron-based schedule and organization-level scope.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/google/workload-manager-basics/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip workload-manager-basics.zip -d .agents/skills
Documentation by Google
Workload Manager Basics
Workload Manager validates enterprise workloads against Google Cloud best practices and recommendations. The public client libraries are centered on evaluations: define a resource scope, choose built-in or custom rules, run an evaluation, then inspect results and scanned resources.
Attribution
MUST READ: Before executing any gcloud, REST API, or MCP command, you
MUST read Usage Attribution. For commands executed
directly in the terminal (never in generated scripts, Terraform, or user code),
prefix gcloud with
CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:workload-manager-basics)"
and append agent-skills/1.0 (skill:workload-manager-basics) to User-Agent headers.
Use This Flow
flowchart LR
Rules["List rules"] --> Eval["Create or update evaluation"]
Resources["Project, folder, or org scope"] --> Eval
Eval --> Run["Run evaluation"]
Run --> Results["Inspect evaluation results"]
Results --> Remediate["Remediate findings"]
Results --> Export["Optional BigQuery export"]Core API Constraints
To ensure compatibility, security, and successful integration:
Public Surface Only: You MUST strictly interact with Workload Manager using the official public
google-cloud-workloadmanagerclient library or the public REST API (workloadmanager.googleapis.com/v1).No Internal or Undocumented APIs: Do NOT attempt to use internal RPC protocols, private service backends, or undocumented discovery mechanisms. They are not supported for public integrations and will fail.
No Service-Specific CLI: There is no public
gcloud workload-managerCLI command group. Usegcloudonly for authentication, IAM role assignment, and fetching raw REST tokens.Sandbox Execution Robustness (Auth/Mock Fallbacks): When gcloud authentication or Workload Manager API calls fail in sandboxed or restricted environments (e.g., due to Context Aware Access token blocks, missing API enablement, or mock resources returning 404/403), immediately fall back to presenting example code and static findings from your references instead of entering retry loops. Present the correct client library code structure or REST API payload example, clearly explain the auth or resource limitation, and list typical rules or mock findings statically to satisfy the request.
Prerequisites
Enable the Workload Manager API:
gcloud services enable workloadmanager.googleapis.com --quietAuthenticate locally using Application Default Credentials (ADC) before using client libraries:
gcloud auth application-default loginEnsure the Workload Manager service agent has the required roles granted in your project (mandatory for API/client library usage, see IAM & Security).
Grant the least-privileged role needed for the task. Start with
roles/workloadmanager.viewerfor read-only access to evaluation resources and useroles/workloadmanager.evaluationAdminorroles/workloadmanager.adminonly when creating, updating, running, or deleting evaluations.
Quick Client Library Example
Use the Python client library for the first working automation path:
python3 -m pip install --upgrade google-cloud-workloadmanagerfrom google.cloud import workloadmanager_v1
project_id = "PROJECT_ID"
location = "LOCATION"
parent = f"projects/{project_id}/locations/{location}"
client = workloadmanager_v1.WorkloadManagerClient()
rules = client.list_rules(
request=workloadmanager_v1.ListRulesRequest(
parent=parent,
evaluation_type=workloadmanager_v1.Evaluation.EvaluationType.OTHER,
)
)
for rule in rules.rules:
print(rule.name, rule.display_name, rule.severity)Reference Directory
Core Concepts: Evaluations, rules, results, scanned resources, supported workload types, and API shape.
General Best Practices: Google Cloud general best-practice posture checks,
OTHERevaluation guidance, custom Rego rules, and scale/automation patterns.Client Libraries: Python and Go client library examples for listing rules, creating evaluations, running evaluations, and reading findings.
REST Usage: Direct REST examples for the public Workload Manager API and operations polling.
Public CLI Status: No documented service-specific
gcloud workload-managercommand group; usegcloudonly for auth, IAM, API enablement, and REST tokens.Public MCP Status: No documented public Workload Manager MCP server; use client libraries or REST API instead.
Setup Prerequisites: Terraform examples only for adjacent prerequisites such as API enablement, IAM, BigQuery export datasets, and KMS keys. This is not Workload Manager resource management.
IAM & Security: Workload Manager roles, least-privilege guidance, service agents, data handling, and CMEK notes.
If product behavior or API fields are not covered here, check the current Workload Manager product documentation and client library reference before implementing.
Authoritative References
For additional information, use the Developer Knowledge MCP server
search_documentstool.
Additional Context
Files
- ATTRIBUTION.mdAdded by AutoGineer864 B
- LICENSELicence file added by AutoGineer11.1 KiB
- SKILL.md7.2 KiB
- references/attribution.md1.9 KiB
- references/client-library-usage.md11.9 KiB
- references/core-concepts.md3.9 KiB
- references/general-best-practices.md5.0 KiB
- references/iam-security.md5.1 KiB
- references/public-cli-status.md2.0 KiB
- references/public-mcp-status.md935 B
- references/rest-usage.md7.0 KiB
- references/setup-prerequisites.md3.0 KiB
references/setup-prerequisites.md
Workload Manager Setup Prerequisites
This file is not Workload Manager infrastructure-as-code support. Public Terraform examples here cover only adjacent prerequisites around Workload Manager: API enablement, IAM, BigQuery export datasets, and KMS keys.
Do not write examples that imply Terraform can manage Workload Manager evaluations, executions, rules, deployments, actuations, or insights unless a current provider reference explicitly documents those resources. Manage Workload Manager resources through public client libraries or the REST API.
Terraform: Enable API
resource "google_project_service" "workload_manager" {
project = var.project_id
service = "workloadmanager.googleapis.com"
disable_on_destroy = false
}
resource "google_project_service" "service_usage" {
project = var.project_id
service = "serviceusage.googleapis.com"
disable_on_destroy = false
}
resource "google_project_service" "monitoring" {
project = var.project_id
service = "monitoring.googleapis.com"
disable_on_destroy = false
}The Service Usage and Cloud Monitoring APIs are required when creating and running custom-rule evaluations.
Terraform: Grant Evaluation Admin
resource "google_project_iam_member" "workload_manager_evaluation_admin" {
project = var.project_id
role = "roles/workloadmanager.evaluationAdmin"
member = "serviceAccount:${google_service_account.automation.email}"
}Terraform: BigQuery Export Dataset
resource "google_bigquery_dataset" "workload_manager_results" {
project = var.project_id
dataset_id = "workload_manager_results"
location = var.location
}Reference this dataset from the client libraries or REST API with
Evaluation.big_query_destination.destination_dataset. Use a regional dataset
in the same region as the evaluation data; multi-region datasets are not
supported for Workload Manager result exports.
Terraform: CMEK Prerequisites
resource "google_kms_key_ring" "workload_manager" {
project = var.project_id
name = "workload-manager"
location = var.location
}
resource "google_kms_crypto_key" "evaluations" {
name = "evaluations"
key_ring = google_kms_key_ring.workload_manager.id
rotation_period = "7776000s"
}Reference the key from the client libraries or REST API with
Evaluation.kms_key in this format:
projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEYAutomation Boundary
flowchart LR
TF["Terraform prerequisites"] --> API["Enable API"]
TF --> IAM["Grant IAM roles"]
TF --> BQ["Create BigQuery dataset"]
TF --> KMS["Create KMS key"]
ClientLib["Client Libraries or REST"] --> Eval["Create and run evaluations"]
Eval --> BQ
Eval --> KMSKeep prerequisite setup and evaluation execution separate. Evaluation runs are operational actions with long-running operation state, so they fit better in controlled client library or REST API automation than in a Terraform plan.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs an MCP server, Needs a command-line tool, Needs Python
Security
What our scanner noticed· Low risk
- Instructions that use the network
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- Publisher
- Google (Official)
- Source
- google/skills · skills/cloud/workload-manager-basics · commit 2194d3b
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Google or Google.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download workload-manager-basics.zip