Skip to content

[FEAT cloudctl] - Add kubectl subcommand with version-pinned binary download #72

Open

Description

@onuryilmaz

User Story

As a cloudctl user, I want cloudctl kubectl to automatically use the correct kubectl version for each cluster, so I never hit API compatibility issues.

Description

cloudctl kubectl <args> — detects the cluster's Kubernetes version via the existing cluster-version command, downloads the matching kubectl binary from dl.k8s.io into XDG cache, auto-injects --kubeconfig, --context, and --namespace from the active config, runs OIDC logon before exec. Handles plugin subcommand argument ordering and shell completion.

Acceptance Criteria

  • Cluster version detected via cluster-version before download
  • Correct kubectl binary downloaded and cached per version
  • --kubeconfig, --context, --namespace injected unless explicitly provided by user
  • OIDC logon performed before exec (skipped for token/exec-plugin auth)
  • Plugin subcommand argument ordering preserved (plugin name before flags)
  • __complete subcommand handled correctly (no interactive logon)

Reference Issues

Epic: #70

Activity

  1. added
    featureNew functional capabilities or significant additions to the CLI.
    kubeconfigSpecifically related to kubeconfig parsing, merging, or management
    on Aug 31, 2026
  2. github-actions commented on Aug 31, 2026

    @github-actions

    Thanks for opening this issue! 🎉

    A maintainer will triage it within 5 business days. You can learn more about our issue workflow in the Issue Lifecycle documentation.

    In the meantime, please make sure you have provided:

    • A clear problem statement
    • Steps to reproduce (for bugs)
    • Expected vs actual behavior

    This helps us route your issue faster.

  3. added
    needs-refinementNeeds scoping before implementation
    and removed
    needs-triageNew issue, not yet reviewed
    on Aug 31, 2026
  4. added
    backlogReady for sprint planning; triggers project addition
    and removed
    needs-refinementNeeds scoping before implementation
    on Sep 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlogReady for sprint planning; triggers project additionfeatureNew functional capabilities or significant additions to the CLI.good first issueGood for newcomerskubeconfigSpecifically related to kubeconfig parsing, merging, or management

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions