Skip to content

retina-shell support for Windows #1529

Open
@wedaly

Description

@wedaly

Is your feature request related to a problem? Please describe.
Add support to retina-shell for Windows nodes.

Describe the solution you'd like

  • Create and publish retina-shell image that can run on Windows.
  • Update retina-shell CLI to run this image on Windows nodes.

Describe alternatives you've considered
N/A

Additional context

  • Windows currently blocked by this validation
    func validateOperatingSystemSupportedForNode(ctx context.Context, clientset *kubernetes.Clientset, nodeName string) error {
    node, err := clientset.CoreV1().
    Nodes().
    Get(ctx, nodeName, metav1.GetOptions{})
    if err != nil {
    return fmt.Errorf("error retrieving node %s: %w", nodeName, err)
    }
    osLabel := node.Labels["kubernetes.io/os"]
    if osLabel != "linux" { // Only Linux supported for now.
    return errUnsupportedOperatingSystem
    }
  • Can use host process containers, similar to what Patrick did for node shell Add support for Windows nodes kvaps/kubectl-node-shell#45
  • Windows base images are large, so probably want to keep it separate from the Linux retina-shell image rather than using multi-arch.
  • I'm not sure all the retina-shell CLI params make sense for Windows, so might need to adjust those (it's marked "experimental" so breaking changes should be okay)

Metadata

Metadata

Assignees

Labels

area/shellRetina shell related

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions