cluster-api icon indicating copy to clipboard operation
cluster-api copied to clipboard

test framework: e2e config provider does not support git go getter value

Open drinkingjasminegreentea opened this issue 6 months ago • 3 comments

What steps did you take and what happened?

Provide a private github repo go getter url like this in the e2e config file:

  - name: kubeadm
    type: BootstrapProvider
    versions:
      - name: v0.6.9
        value: "git::ssh://[email protected]/myorg/myrepo//capi-providers/bootstrap-talos/?timeout=120&ref=main"
        type: kustomize

Execute the e2e test and it results in the following error:

"failed to execute kustomize: Error: must build at directory: not a valid directory: evalsymlink failure on '/Users/me/src/repo/test/e2e/config/git::ssh://[email protected]/myorg/myrepo//capi-providers/bootstrap-talos/?timeout=120&ref=main' : lstat /Users/me/src/repo/test/e2e/config/git::ssh:: no such file or directory\n",

The error is caused by this line: https://github.com/kubernetes-sigs/cluster-api/blob/main/test/framework/clusterctl/e2e_config.go#L514

version.value is not null and version.value is not url, further it checks if the version.value is an absolute path. Absolute path should start with '/' and in our case the go getter URL doesn't have that. So it appends the current e2e config file folder path to it, resulting in value '/Users/me/src/repo/test/e2e/config/git::ssh://[email protected]/myorg/myrepo//capi-providers/bootstrap-talos/?timeout=120&ref=main'

What did you expect to happen?

The documentation says that it should support go getter url with kustomize type: https://github.com/kubernetes-sigs/cluster-api/blob/main/test/framework/clusterctl/e2e_config.go#L167

No error should be thrown and kustomize should successfully build using a go getter url value.

Cluster API version

v1.10.1

Kubernetes version

v1.33.0

Anything else you would like to add?

No response

Label(s) to be applied

/area/e2e-testing

drinkingjasminegreentea avatar May 21 '25 23:05 drinkingjasminegreentea

The error is caused by this line: main/test/framework/clusterctl/e2e_config.go#L514

@drinkingjasminegreentea Sounds correct. Feel free to open a PR

/triage accepted /priority backlog

sbueringer avatar May 28 '25 15:05 sbueringer

/help

chrischdi avatar Jun 11 '25 12:06 chrischdi

@chrischdi: This request has been marked as needing help from a contributor.

Guidelines

Please ensure that the issue body includes answers to the following questions:

  • Why are we solving this issue?
  • To address this issue, are there any code changes? If there are code changes, what needs to be done in the code and what places can the assignee treat as reference points?
  • How can the assignee reach out to you for help?

For more details on the requirements of such an issue, please see here and ensure that they are met.

If this request no longer meets these requirements, the label can be removed by commenting with the /remove-help command.

In response to this:

/help

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar Jun 11 '25 12:06 k8s-ci-robot