Skip to content

Add guidance on infrastructure resource names to provider implementation guides #7030

Open
@randomvariable

Description

@randomvariable

User Story

As a user, on some infrastructures when I go to deploy a cluster with names like the following, I experience some form of breakage:

Example names

  • default/longnamemorethansixtythreecharacterslong
  • default/names.using.dots.in.them
  • same cluster name, but in a different namespace ( default/cluster1 businessunit1/cluster1)

Example forms of breakage

  • The cluster infrastructure doesn't come up
  • The VM doesn't come up
  • The VM does come up but doesn't complete bootstrap, and there's complaints from cloud-init about the hostname.

Detailed Description

Provider contracts in https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/book/src/developer/providers/machine-infrastructure.md and https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/book/src/developer/providers/cluster-infrastructure.md should include guidance on how to implement the provider to accept all valid Kubernetes resource names, including techniques like conditional hashing (kubernetes-sigs/cluster-api-provider-aws#1290).

And then after we do that, we should probably circulate this amongst provider implementers so they can check they're not affected, and maybe add appropriate E2Es according to the constraints of their infrastructure provider.

Anything else you would like to add:

A bunch of related issues:

[Miscellaneous information that will assist in solving the issue.]

/kind docs

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedDenotes an issue that needs help from a contributor. Must meet "help wanted" guidelines.kind/documentationCategorizes issue or PR as related to documentation.priority/backlogHigher priority than priority/awaiting-more-evidence.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions