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

Promote resourceQuota e2e verifying 'object count quota' and 'quota scope' to Conformance #78331

Merged

Conversation

mgdevstack
Copy link
Contributor

@mgdevstack mgdevstack commented May 25, 2019

What type of PR is this?

Uncomment only one /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line:

/kind api-change
/kind bug

/kind cleanup

/kind design
/kind documentation
/kind failing-test
/kind feature
/kind flake

What this PR does / why we need it:
Promoting following e2e to Conformance -

  1. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and ensure its status is promptly calculated."
    Execution time: 13.192 seconds
  2. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a service."
    Execution time: 17.307 seconds
  3. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a secret."
    Execution time: 23.227 seconds
  4. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a pod."
    Execution time: 19.307 seconds
  5. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a configMap."
    Execution time: 22.230 seconds
  6. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a replication controller."
    Execution time: 17.307 seconds
  7. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a replica set."
    Execution time: 17.235 seconds
  8. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a persistent volume claim."
    Execution time: 17.231 seconds
  9. test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a persistent volume claim with a storage class."
    Execution time: 17.243 seconds
  10. test/e2e/apimachinery/resource_quota.go: "should verify ResourceQuota with terminating scopes."
    Execution time: 22.325 seconds
  11. test/e2e/apimachinery/resource_quota.go: "should verify ResourceQuota with best effort scope."
    Execution time: 22.333 seconds
  12. test/e2e/apimachinery/resource_quota.go: "Should be able to update and delete ResourceQuota."
    Execution time: 6.206 seconds

Which issue(s) this PR fixes:

Fixes #78831

Special notes for your reviewer:

  1. Do we still need to keep [Feature:ScopeSelectors] labelled here and [Feature:PodPriority] labelled here?
  • E2E from these context are candidate for Promotion, as [Feature:] labelled e2e are not promotable to Conformance and ScopeSelector and PodPriority is GAed, Could we remove [Feature] and consider for Promotion separately?
  1. No Flakes found in kind cluster.

Does this PR introduce a user-facing change?:

None

/area conformance
/area testing
@kubernetes/sig-api-machinery-pr-reviews
@kubernetes/sig-architecture-pr-reviews
@kubernetes/cncf-conformance-wg

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. area/conformance Issues or PRs related to kubernetes conformance tests sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. area/test sig/testing Categorizes an issue or PR as relevant to SIG Testing. labels May 25, 2019
@mgdevstack
Copy link
Contributor Author

/test pull-kubernetes-integration

@fedebongio
Copy link
Contributor

/assign @yliaog

Copy link
Member

@timothysc timothysc left a comment

Choose a reason for hiding this comment

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

very minor comment, but I didn't see anything in the tests that I think should be disqualifying.

When you make the update, I'll dig in deeper.

test/e2e/apimachinery/resource_quota.go Outdated Show resolved Hide resolved
@timothysc timothysc added this to the v1.16 milestone Jun 11, 2019
@mgdevstack mgdevstack force-pushed the master-promote-resourcequota branch from 6ff2fb2 to 2b15e34 Compare June 11, 2019 06:05
@@ -22,7 +22,7 @@ import (
"time"

appsv1 "k8s.io/api/apps/v1"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
Copy link
Contributor Author

@mgdevstack mgdevstack Jun 11, 2019

Choose a reason for hiding this comment

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

Note for reviewer: I suspect, recent gofmt or goimport adding this named import alias.

@mgdevstack
Copy link
Contributor Author

/test pull-kubernetes-bazel-build

@timothysc timothysc added the priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. label Jun 11, 2019
@k8s-ci-robot k8s-ci-robot removed the needs-priority Indicates a PR lacks a `priority/foo` label and requires one. label Jun 11, 2019
@timothysc timothysc self-assigned this Jun 11, 2019
Copy link
Member

@timothysc timothysc left a comment

Choose a reason for hiding this comment

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

/lgtm

I still need to go through the tests in detail but moving columns in case others have more time than me to approve.

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jun 11, 2019
@mgdevstack mgdevstack force-pushed the master-promote-resourcequota branch from 2b15e34 to 2c6fbc1 Compare June 12, 2019 02:46
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jun 12, 2019
test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a configMap."
test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a replication controller."
test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a replica set."
test/e2e/apimachinery/resource_quota.go: "should create a ResourceQuota and capture the life of a persistent volume claim."
Copy link
Member

Choose a reason for hiding this comment

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

Please remove the PV and PVC tests. They aren't ready for conformance yet. We don't have any PV or PVC tests yet.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Removed.

Create a ConfigMap. Its creation MUST be successful and resource usage count against the ConfigMap object MUST be captured in ResourceQuotaStatus of the ResourceQuota.
Delete the ConfigMap. Deletion MUST succeed and resource usage count against the ConfigMap object MUST be released from ResourceQuotaStatus of the ResourceQuota.
*/
framework.ConformanceIt("should create a ResourceQuota and capture the life of a configMap.", func() {
Copy link
Member

Choose a reason for hiding this comment

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

Does this test really need to be so complicated, or did it just copy the secret test?

Copy link
Member

Choose a reason for hiding this comment

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

@mikedanese asked a similar question when this test was first introduced https://github.com/kubernetes/kubernetes/pull/68812/files#r230931734

Per comments below this is making an allowance for ca.crt to show up

Copy link
Member

Choose a reason for hiding this comment

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

Why do we need to do that? Is this just related to how we have configured the e2e cluster? If there is this race condition in pod startup, it would seem that users can hit this too, we shouldn't just work around it.

Copy link
Member

@spiffxp spiffxp left a comment

Choose a reason for hiding this comment

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

I agree with removing the PV/PVC tests but otherwise feel like clarifying comments and such are scope creep.

Description: Create a ResourceQuota. Creation MUST be successful and its ResourceQuotaStatus MUST match to expected used and total allowed resource quota count within namespace.
Create a Secret. Its creation MUST be successful and resource usage count against the Secret object and resourceQuota object MUST be captured in ResourceQuotaStatus of the ResourceQuota.
Delete the Secret. Deletion MUST succeed and resource usage count against the Secret object MUST be released from ResourceQuotaStatus of the ResourceQuota.
*/
Copy link
Member

Choose a reason for hiding this comment

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

It would be nice but I wouldn't block promoting on the lack of such a comment. The test has been like this for a while.

ref @smarterclayton #40340

On contended servers the service account controller can slow down,
leading to the count changing during a run. Wait up to 5s for the count
to stabilize, assuming that updates come at a consistent rate, and are
not held indefinitely.

Create a ConfigMap. Its creation MUST be successful and resource usage count against the ConfigMap object MUST be captured in ResourceQuotaStatus of the ResourceQuota.
Delete the ConfigMap. Deletion MUST succeed and resource usage count against the ConfigMap object MUST be released from ResourceQuotaStatus of the ResourceQuota.
*/
framework.ConformanceIt("should create a ResourceQuota and capture the life of a configMap.", func() {
Copy link
Member

Choose a reason for hiding this comment

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

@mikedanese asked a similar question when this test was first introduced https://github.com/kubernetes/kubernetes/pull/68812/files#r230931734

Per comments below this is making an allowance for ca.crt to show up

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 23, 2019
@spiffxp
Copy link
Member

spiffxp commented Jul 23, 2019

/lgtm cancel
please resolve the PV/PVC comments

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 23, 2019
@spiffxp
Copy link
Member

spiffxp commented Jul 23, 2019

/remove-kind api-change

@k8s-ci-robot k8s-ci-robot removed the kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API label Jul 23, 2019
@mgdevstack mgdevstack force-pushed the master-promote-resourcequota branch from bdd82e2 to a921970 Compare July 25, 2019 14:32
@xichengliudui
Copy link
Contributor

/retest

@spiffxp
Copy link
Member

spiffxp commented Jul 26, 2019

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 26, 2019
@oomichi
Copy link
Member

oomichi commented Jul 31, 2019

There are not any big changes which seem related to flake in this year at least since f58c2ae (There is a lot of cleanup changes btw)
Non-GA API are not called in these tests.
There are not any skipping methods related to cloud providers.

/lgtm

@timothysc timothysc removed their assignment Aug 2, 2019
@spiffxp
Copy link
Member

spiffxp commented Aug 7, 2019

/assign @bgrant0607 @smarterclayton
Looking for /approve

@smarterclayton
Copy link
Contributor

/approve

Quota is fundamental to a Kube system

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mgdevstack, smarterclayton

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 Aug 8, 2019
@fejta-bot
Copy link

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

1 similar comment
@fejta-bot
Copy link

/retest
This bot automatically retries jobs that failed/flaked on approved PRs (send feedback to fejta).

Review the full test history for this PR.

Silence the bot with an /lgtm cancel or /hold comment for consistent failures.

@k8s-ci-robot k8s-ci-robot merged commit 9d3d201 into kubernetes:master Aug 9, 2019
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. area/conformance Issues or PRs related to kubernetes conformance tests area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. release-note-none Denotes a PR that doesn't merit a release note. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Promote ResourceQuota Tests to Conformance