Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Helm chart manifests in the e2e tests #366

Open
mauriciopoppe opened this issue Feb 14, 2023 · 6 comments
Open

Use Helm chart manifests in the e2e tests #366

mauriciopoppe opened this issue Feb 14, 2023 · 6 comments
Assignees
Labels
good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@mauriciopoppe
Copy link
Member

mauriciopoppe commented Feb 14, 2023

So our e2e tests create a test cluster and install LVP using go code

setupLocalVolumeProvisioner(ctx, config, nil)

createProvisionerDaemonset(ctx, config)

And if you look at the implementation it's installing the same resources declared in the helm chart, to avoid duplicating the setup we could set up a helm go client and install the chart in helm/provisioner/ with some values defined in go code instead.

I think https://manuelmazzuola.dev/2021/03/28/deploy-helm-chart-go is good starting point to use helm programatically, another way to accomplish the same is to install the helm/kubectl binaries in the script that creates the cluster that way we can call helm debug | kubectl apply -f - from within the test

The starting point for the test runner is our Prow job in test-infra which calls make e2e -> hack/e2e.sh ->

go run $ROOT/hack/e2e.go -- "${kubetest_args[@]}" \
--deployment "$DEPLOYMENT" \
--up \
--down \
--test-cmd bash \
--test-cmd-args="$ROOT/hack/run-e2e.sh" \
"$@"

if you have a cluster already running make sure to update the above lines to only run the test and not create/delete a cluster, i.e. remove --up --down

@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle stale
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label May 15, 2023
@k8s-triage-robot
Copy link

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue as fresh with /remove-lifecycle rotten
  • Close this issue with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

@k8s-ci-robot k8s-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jun 14, 2023
@mauriciopoppe
Copy link
Member Author

/remove-lifecycle rotten
/lifecycle frozen

@k8s-ci-robot k8s-ci-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Jun 15, 2023
@mauriciopoppe mauriciopoppe added help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. labels Jun 15, 2023
@jennwah
Copy link
Contributor

jennwah commented Jul 8, 2023

/assign

Hi @mauriciopoppe , I can help on this issue. But i need some help as I not sure how to go about this

@mauriciopoppe
Copy link
Member Author

mauriciopoppe commented Jul 22, 2023

I updated the description with more info, hope it helps

@jennwah
Copy link
Contributor

jennwah commented Jul 23, 2023

Sure, the description looks good to me. Will give this a try when I have some time on hand later on. Will ping you once I am done with the PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

4 participants