Skip to content

Common Operations

Implement common Kubernetes operations in your CLI.

Idiomatic Kubernetes

Use label selectors for filtering, strategic merge patches for updates, and proper error handling with apierrors.IsNotFound().


Overview

A well-designed Kubernetes CLI provides idiomatic operations that work consistently across resource types. This section covers:


Operation Patterns

graph TB
    CLI[CLI Command] --> List[List Resources]
    CLI --> Mutate[Mutate Resources]
    CLI --> Watch[Watch Changes]

    List --> Filter[Label Selectors]
    Mutate --> Patch[Strategic Merge Patch]
    Mutate --> Create[Get-or-Create]
    Watch --> Events[Event Stream]

    %% Ghostty Hardcore Theme
    style CLI fill:#65d9ef,color:#1b1d1e
    style List fill:#a7e22e,color:#1b1d1e
    style Mutate fill:#fd971e,color:#1b1d1e
    style Watch fill:#9e6ffe,color:#1b1d1e
    style Filter fill:#5e7175,color:#f8f8f3
    style Patch fill:#5e7175,color:#f8f8f3
    style Create fill:#5e7175,color:#f8f8f3
    style Events fill:#5e7175,color:#f8f8f3

Best Practices

Practice Description
Use label selectors Filter resources server-side, not client-side
Prefer patches over updates Patches are safer for concurrent modifications
Use strategic merge patches Kubernetes-native patch format for resources
Handle not found errors Check apierrors.IsNotFound(err) before creating
Respect resource versions Use optimistic concurrency for updates

Use the Kubernetes API idiomatically: label selectors, patches, and proper error handling.

Comments