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
Set up testing environments for kubeadm #34136
Comments
I've started doing some work on integration tests, using Docker-in-Docker and systemd (of course). It's sort of very experimental and exploratory, e.g. I used Drone and not Jenkins, and I am still to look at test-infra repo and see how well it suites our needs, I have some doubts if there much that can be reused for deb/rpm+systemd integration test in particular. See these repos (sorry, no docs yet):
I'll continue playing with this, unless someone thinks it's a really bad idea... Let's discuss in more details on Slack, I just thought I can start something unless anyone else commits to it. It's not ready to show and it's a 65% functional PoC, but I just want to make sure folks know that I'm working on something in this are, and I also would really appreciate any help! |
See also https://groups.google.com/d/msg/kubernetes-sig-cluster-lifecycle/nb-To3C8eZ8/_5o2hs6SFAAJ This being said, I think @errordeveloper's Also, thanks to @marun for his dkr-systemd-dind project and to @errordeveloper for |
/cc @kubernetes/sig-testing |
It would be great if we could get e2es running in our existing test-infra using kubeadm. |
I'd like to do this by adapting kubernetes-anywhere to use kubeadm instead of iginition and write bindings for kubernetes-anywhere using @zmerlynn 's new hack/e2e.go features. |
/cc @dmmcquay |
This needs to be triaged as a release-blocker or not for 1.5 @luxas @pires @mikedanese |
@dims This is very close to done. This won't be a release blocker. I'm ok with moving this out of the milestone even though it will likely be done by the release. Last release didn't we have a v1.4-nonblocking milestone? |
@mikedanese Have you set up a jenkins ci? |
@mikedanese : nice! let's ask Saad. @saad-ali : we need a v1.5-nonblocking milestone this time? |
@mikedanese sounds good to me. |
@luxas @pipejakob Is it appropriate to move this to the next milestone or clear the 1.5 milestone? (and remove the non-release-blocker tag as well) |
@mikedanese Actually we can move this issue to kubernetes/kubeadm |
…te_has_unit_tests Automatic merge from submit-queue (batch tested with PRs 39681, 39321, 41018, 40883) kubeadm: app/util/template.go has unit tests **What this PR does / why we need it**: There was a TODO tag about adding unit tests, but unit tests have been added and the coverage for that file is ~90%. Tag should be removed. Adding unit tests is a WIP from kubernetes#34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 40385, 40786, 40999, 41026, 40996) kubeadm: change os.Remove to os.RemoveAll **What this PR does / why we need it**: This would not correctly clean out the tmp dir, since os.Remove doesn't recursively remove dirs, which could exist in the tmp dir. Unit tests are a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41064, 41090, 41068, 41073, 40882) kubeadm: updated tests in app/util pkg **What this PR does / why we need it**: Tests did not follow the standard of being table driven. Updated to make future changes (Adding/deleting tests) easier as well as more readable Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41061, 40888, 40664, 41020, 41085) kubeadm: added tests cert/pkiutil pkg raised coverage from ~37% to ~77% **What this PR does / why we need it**: added tests to cert/pkiutil pkg and raised coverage from ~37% to ~77% Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 40796, 40878, 36033, 40838, 41210) kubeadm: added tests for preflight checks **What this PR does / why we need it**: There hadn't been much care to add more unit tests as more preflight checks were added. I added tests that increased coverage from ~9% to ~71% Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41342, 41257, 41295, 41367, 41230) kubeadm: unit tests for apis/kubeadm/validation **What this PR does / why we need it**: added tests to apis/kubeadm/validation pkg and raised coverage from ~21% to 100%. Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41337, 41375, 41363, 41034, 41350) kubeadm: adding tests for util/tokens.go **What this PR does / why we need it**: added tests to util pkg and raised coverage from ~48% to ~67%. Will get better coverage once migration to client-go is complete. Included a fix for a logic error in tokens.go found through writing tests Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue kubeadm: test-cmd: token{delete} **What this PR does / why we need it**: Adding test-cmds for kubeadm ex token delete. Will followup with more test-cmds for other flags as soon as validation for the flags works. Adding tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41216, 41362, 41275, 41277, 41412) kubeadm: test-cmd: init{config, version, api-port} **What this PR does / why we need it**: Adding test-cmds for kubeadm init {config, version, api-port}. Will followup with more test-cmds for other flags as soon as validation for the flags works. Adding tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41216, 41362, 41275, 41277, 41412) kubeadm: test-cmd: join{config, discovery} **What this PR does / why we need it**: Adding test-cmds for kubeadm join {config, discovery}. Will followup with more test-cmds for other flags as soon as validation for the flags works. Adding tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 41216, 41362, 41275, 41277, 41412) kubeadm: added unit tests for discovery pkg **What this PR does / why we need it**: added tests to discovery pkg and raised coverage from ~25% to ~71%. Adding unit tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas @pires **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 42360, 43109, 43737, 43853) kubeadm: test-cmds for kubeadm completion **What this PR does / why we need it**: Adding test-cmds for kubeadm completion. Adding tests is a WIP from #34136 **Special notes for your reviewer**: /cc @luxas **Release note**: ```release-note NONE ```
Automatic merge from submit-queue (batch tested with PRs 42432, 44628, 45101, 44921) kubeadm: join test cmds for new flags **What this PR does / why we need it**: Adding test-cmds for new kubeadm join flags. Adding tests is a WIP from kubernetes#34136 This is a continuation from kubernetes#42812 since it had to be closed. **Special notes for your reviewer**: /cc @luxas **Release note**: ```release-note NONE ```
@pipejakob @mikedanese I think this issue can be closed now given that we have the kubeadm e2e Prow job running? Also @ivan4th has the kubeadm DIND project that can be used for this purpose easily by devs. |
First we should make small integration tests that are spinning up a two-node cluster (maybe in containers) and verifying that the cluster comes up and basic functionality works
Then full-featured e2e testing that runs the e2e conformance suite on a kubeadm-created cluster should follow as a presubmit check so we can be sure that we're not breaking things when submitting PRs
Hopefully we're doing this in containers, @errordeveloper and @marun were experimenting with that.
Anything else we need for testing kubeadm?
cc @kubernetes/sig-cluster-lifecycle @kubernetes/sig-testing
The text was updated successfully, but these errors were encountered: