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

Add instructions about how to bring up e2e test cluster #85836

Merged
merged 2 commits into from Jan 2, 2020

Conversation

YangLu1031
Copy link
Contributor

@YangLu1031 YangLu1031 commented Dec 3, 2019

What type of PR is this?
/kind documentation

What this PR does / why we need it:
Add instructions about how to bring up e2e test cluster. ./cluster/kube-up.sh can bring up a cluster but not work with e2e test script, instead ./hack/e2e-internal/e2e-up.sh works. kubetest also works, but due to some go module incompatible issues in kubetest, need to do some walkaround to update kubetest binary. Although kubetest can extract different versions of k8s binaries, but for local test, it seems not necessary. So ./hack/e2e-internal/e2e-up.sh should be the best way.

Special notes for your reviewer:
Some discussions about build kubetest:
Azure/go-autorest#414
Azure/go-autorest#481

Does this PR introduce a user-facing change?:

Add instructions about how to bring up e2e test cluster

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-kind Indicates a PR lacks a `kind/foo` label and requires one. needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 3, 2019
@k8s-ci-robot
Copy link
Contributor

Hi @YangLu1031. Thanks for your PR.

I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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/test-infra repository.

@YangLu1031
Copy link
Contributor Author

/cc pjh

@k8s-ci-robot k8s-ci-robot requested a review from pjh December 3, 2019 02:44
@k8s-ci-robot k8s-ci-robot added sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. and removed needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Dec 3, 2019
@RA489
Copy link

RA489 commented Dec 3, 2019

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 3, 2019
@pjh
Copy link
Contributor

pjh commented Dec 17, 2019

/kind documentation
/priority important-soon

@k8s-ci-robot k8s-ci-robot added kind/documentation Categorizes issue or PR as related to documentation. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. and removed needs-kind Indicates a PR lacks a `kind/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. labels Dec 17, 2019
@@ -95,6 +95,44 @@ To teardown the cluster run:
PROJECT=${CLOUDSDK_CORE_PROJECT} KUBERNETES_SKIP_CONFIRM=y ./cluster/kube-down.sh
```

#### 2b. Create a Kubernetes end-to-end (E2E) test cluster
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure that these headings are accurate:

#### 2a. Create a regular Kubernetes cluster
#### 2b. Create a Kubernetes end-to-end (E2E) test cluster

Is there any difference in the resulting clusters? Can e2e tests be run against clusters brought up using the 2a steps?

I'm wondering if this should instead be:

#### 2. Create a Kubernetes cluster
...explain that there are two ways that work, and explain what the difference between them is...
##### Using kube-up
##### Using kubetest

What do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree, did some experiments, the main differences are

  1. Both e2e test clusters and e2e test scripts are setup using the config cluster/gce/config-test.sh, so the test scripts look for the e2e cluster only and run tests.
  2. Only e2e test clusters enables SSH on windows nodes. Regular clusters are not. So couldn't dump logs thru scp on regular cluster windows node.

Added explanations.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also the differences between kubetest --up & ./hack/e2e-internal/e2e-up.sh is that kubetest has extra step at the end: ./cluster/kubectl.sh --match-server-version=false version which seems just update the kubectl binary. And the kubectl.sh will be deprecated soon from the file descriptions.

@YangLu1031 YangLu1031 changed the title Add instructions about how to use kubetest to bring up e2e test cluster Add instructions about how to bring up e2e test cluster Dec 20, 2019
@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Dec 20, 2019
@YangLu1031
Copy link
Contributor Author

/test ci-kubernetes-e2e-windows-node-throughput

@YangLu1031
Copy link
Contributor Author

/retest

@YangLu1031
Copy link
Contributor Author

/test pull-kubernetes-e2e-windows-node-throughput

@YangLu1031
Copy link
Contributor Author

/retest

@YangLu1031
Copy link
Contributor Author

/skip

@YangLu1031
Copy link
Contributor Author

/test pull-kubernetes-e2e-windows-node-throughput

@pjh
Copy link
Contributor

pjh commented Jan 2, 2020

/lgtm
/approve

Thanks for checking on those things and updating the description.

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jan 2, 2020
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: pjh, YangLu1031

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 2, 2020
@YangLu1031
Copy link
Contributor Author

/retest

@k8s-ci-robot k8s-ci-robot merged commit 8727eef into kubernetes:master Jan 2, 2020
@k8s-ci-robot k8s-ci-robot added this to the v1.18 milestone Jan 2, 2020
@k8s-ci-robot
Copy link
Contributor

@YangLu1031: The following test failed, say /retest to rerun them all:

Test name Commit Details Rerun command
pull-kubernetes-e2e-windows-node-throughput b88788b link /test pull-kubernetes-e2e-windows-node-throughput

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

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/test-infra repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/documentation Categorizes issue or PR as related to documentation. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants