agentleFS
Google CloudKnown publisherGoogleCloudPlatform/devrel-demos/containers/k8s-revisited/shared/skills/k8s-1.37/SKILL.md

kubernetes-1-37-manifests

Skill404 starsChanged 13 days agoApache-2.0View on GitHub

Use when writing or reviewing Kubernetes manifests that must work on Kubernetes 1.37, including on GKE. Lists the current API versions, features that graduated since 2020, patterns that older docs still show, and GKE notes from hands-on runs.

The file

Files
SKILL.md

Writing manifests for Kubernetes 1.37

Checked on 2026-11-10 against the Kubernetes documentation, the API groups served by GKE 1.37 clusters, and the Agent Sandbox project docs. The GKE notes come from runs on GKE 1.37 and 1.35 in November 2026.

Use these API versions

KindapiVersion
Deployment, StatefulSet, DaemonSet, ReplicaSetapps/v1
Job, CronJobbatch/v1
Ingress, IngressClass, NetworkPolicynetworking.k8s.io/v1
PodDisruptionBudgetpolicy/v1
HorizontalPodAutoscalerautoscaling/v2
PriorityClassscheduling.k8s.io/v1
Workload, PodGroupscheduling.k8s.io/v1beta1, only where the GenericWorkload feature gate is on (it's off by default)
DeviceClass, ResourceClaim, ResourceClaimTemplate, ResourceSliceresource.k8s.io/v1
ValidatingAdmissionPolicy, MutatingAdmissionPolicy and their bindingsadmissionregistration.k8s.io/v1
FlowSchema, PriorityLevelConfigurationflowcontrol.apiserver.k8s.io/v1
RuntimeClassnode.k8s.io/v1
KubeSchedulerConfigurationkubescheduler.config.k8s.io/v1
Sandbox (Agent Sandbox CRD)agents.x-k8s.io/v1beta1
SandboxTemplate, SandboxWarmPool, SandboxClaim (Agent Sandbox CRDs)extensions.agents.x-k8s.io/v1beta1

PodSecurityPolicy no longer exists. Use Pod Security Admission labels on the namespace.

Features to reach for

  • Native sidecars: an init container with restartPolicy: Always starts before the app containers and keeps running.
  • In-place resize: set resizePolicy per resource on the container, then change resources through the resize subresource (kubectl patch pod NAME --subresource resize ...).
  • Image volumes: volumes[].image.reference mounts an OCI image or artifact read-only. Use it for model weights instead of an init container download.
  • User namespaces: spec.hostUsers: false maps container root to an unprivileged user on the node.
  • Seccomp: securityContext.seccompProfile.type: RuntimeDefault, not the old annotations.
  • Scheduling gates: spec.schedulingGates holds a Pod back until a controller removes the gate.
  • Topology spread per rollout: topologySpreadConstraints[].matchLabelKeys: [pod-template-hash].
  • DRA: a ResourceClaimTemplate lists requests under spec.spec.devices.requests[]; each request sets exactly one of exactly (a single choice) or firstAvailable (an ordered fallback list). The Pod references the template from spec.resourceClaims[].resourceClaimTemplateName, and the container from resources.claims[].name.

Patterns older docs still show (avoid)

  • extensions/v1beta1, apps/v1beta1, apps/v1beta2, policy/v1beta1, batch/v1beta1, networking.k8s.io/v1beta1
  • seccomp.security.alpha.kubernetes.io/* and container.apparmor.security.beta.kubernetes.io/* annotations
  • A sidecar as a second regular container with no startup ordering
  • resource.k8s.io/v1alpha2 (classic DRA, removed)
  • kubescheduler.config.k8s.io/v1beta2 and v1beta3

GKE notes

  • Swap is a GKE Standard node pool setting (linuxConfig.swapConfig in the node system config). Only Burstable Pods use it.
  • Kubelet settings such as the CPU Manager policy are set per node pool in the node system config (kubeletConfig), not with a KubeletConfiguration object.
  • Autopilot checks Pods at admission:
    • allowed volume types are configMap, csi, downwardAPI, emptyDir, gcePersistentDisk, hostPath, nfs, persistentVolumeClaim, projected, secret and ephemeral (so no image volumes);
    • the memory request has to stay within a range relative to the CPU request, and a resize that raises only CPU can be rejected for it;
    • the nodes/proxy permission can't be granted.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.