Update formatting of conformance comment

This commit is contained in:
Jefftree 2020-07-29 08:56:26 -07:00
parent 8e8b6a01cf
commit ace97738e2
58 changed files with 291 additions and 288 deletions

View File

@ -15,7 +15,7 @@ clean up the tests.
Example:
```
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, log output, default
Description: By default the stdout and stderr from the process being executed in a pod MUST be sent to the pod's logs.
*/

View File

@ -90,7 +90,7 @@ var _ = SIGDescribe("Aggregator", func() {
})
/*
Release : v1.17
Release: v1.17
Testname: aggregator-supports-the-sample-apiserver
Description: Ensure that the sample-apiserver code from 1.17 and compiled against 1.17
will work on the current Aggregator/API-Server.

View File

@ -139,7 +139,7 @@ var _ = SIGDescribe("CustomResourceConversionWebhook [Privileged:ClusterAdmin]",
})
/*
Release : v1.16
Release: v1.16
Testname: Custom Resource Definition Conversion Webhook, conversion custom resource
Description: Register a conversion webhook and a custom resource definition. Create a v1 custom
resource. Attempts to read it at v2 MUST succeed.
@ -173,7 +173,7 @@ var _ = SIGDescribe("CustomResourceConversionWebhook [Privileged:ClusterAdmin]",
})
/*
Release : v1.16
Release: v1.16
Testname: Custom Resource Definition Conversion Webhook, convert mixed version list
Description: Register a conversion webhook and a custom resource definition. Create a custom resource stored at
v1. Change the custom resource definition storage to v2. Create a custom resource stored at v2. Attempt to list

View File

@ -47,7 +47,7 @@ var _ = SIGDescribe("CustomResourceDefinition resources [Privileged:ClusterAdmin
ginkgo.Context("Simple CustomResourceDefinition", func() {
/*
Release : v1.9
Release: v1.9
Testname: Custom Resource Definition, create
Description: Create a API extension client and define a random custom resource definition.
Create the custom resource definition and then delete it. The creation and deletion MUST
@ -73,7 +73,7 @@ var _ = SIGDescribe("CustomResourceDefinition resources [Privileged:ClusterAdmin
})
/*
Release : v1.16
Release: v1.16
Testname: Custom Resource Definition, list
Description: Create a API extension client, define 10 labeled custom resource definitions and list them using
a label selector; the list result MUST contain only the labeled custom resource definitions. Delete the labeled
@ -135,7 +135,7 @@ var _ = SIGDescribe("CustomResourceDefinition resources [Privileged:ClusterAdmin
})
/*
Release : v1.16
Release: v1.16
Testname: Custom Resource Definition, status sub-resource
Description: Create a custom resource definition. Attempt to read, update and patch its status sub-resource;
all mutating sub-resource operations MUST be visible to subsequent reads.
@ -258,7 +258,7 @@ var _ = SIGDescribe("CustomResourceDefinition resources [Privileged:ClusterAdmin
})
/*
Release : v1.17
Release: v1.17
Testname: Custom Resource Definition, defaulting
Description: Create a custom resource definition without default. Create CR. Add default and read CR until
the default is applied. Create another CR. Remove default, add default for another field and read CR until

View File

@ -39,7 +39,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Events", func() {
f := framework.NewDefaultFramework("events")
/*
Release : v1.19
Release: v1.19
Testname: Event resource lifecycle
Description: Create an event, the event MUST exist.
The event is patched with a new message, the check MUST have the update message.
@ -124,7 +124,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Events", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Event, delete a collection
Description: A set of events is created with a label selector which MUST be found when listed.
The set of events is deleted and MUST NOT show up when listed by its label selector.

View File

@ -320,7 +320,7 @@ var _ = SIGDescribe("Garbage collector", func() {
f := framework.NewDefaultFramework("gc")
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, delete replication controller, propagation policy background
Description: Create a replication controller with 2 Pods. Once RC is created and the first Pod is created, delete RC with deleteOptions.PropagationPolicy set to Background. Deleting the Replication Controller MUST cause pods created by that RC to be deleted.
*/
@ -378,7 +378,7 @@ var _ = SIGDescribe("Garbage collector", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, delete replication controller, propagation policy orphan
Description: Create a replication controller with maximum allocatable Pods between 10 and 100 replicas. Once RC is created and the all Pods are created, delete RC with deleteOptions.PropagationPolicy set to Orphan. Deleting the Replication Controller MUST cause pods created by that RC to be orphaned.
*/
@ -499,7 +499,7 @@ var _ = SIGDescribe("Garbage collector", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, delete deployment, propagation policy background
Description: Create a deployment with a replicaset. Once replicaset is created , delete the deployment with deleteOptions.PropagationPolicy set to Background. Deleting the deployment MUST delete the replicaset created by the deployment and also the Pods that belong to the deployments MUST be deleted.
*/
@ -558,7 +558,7 @@ var _ = SIGDescribe("Garbage collector", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, delete deployment, propagation policy orphan
Description: Create a deployment with a replicaset. Once replicaset is created , delete the deployment with deleteOptions.PropagationPolicy set to Orphan. Deleting the deployment MUST cause the replicaset created by the deployment to be orphaned, also the Pods created by the deployments MUST be orphaned.
*/
@ -642,7 +642,7 @@ var _ = SIGDescribe("Garbage collector", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, delete replication controller, after owned pods
Description: Create a replication controller with maximum allocatable Pods between 10 and 100 replicas. Once RC is created and the all Pods are created, delete RC with deleteOptions.PropagationPolicy set to Foreground. Deleting the Replication Controller MUST cause pods created by that RC to be deleted before the RC is deleted.
*/
@ -727,7 +727,7 @@ var _ = SIGDescribe("Garbage collector", func() {
// TODO: this should be an integration test
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, multiple owners
Description: Create a replication controller RC1, with maximum allocatable Pods between 10 and 100 replicas. Create second replication controller RC2 and set RC2 as owner for half of those replicas. Once RC1 is created and the all Pods are created, delete RC1 with deleteOptions.PropagationPolicy set to Foreground. Half of the Pods that has RC2 as owner MUST not be deleted but have a deletion timestamp. Deleting the Replication Controller MUST not delete Pods that are owned by multiple replication controllers.
*/
@ -841,7 +841,7 @@ var _ = SIGDescribe("Garbage collector", func() {
// TODO: should be an integration test
/*
Release : v1.9
Release: v1.9
Testname: Garbage Collector, dependency cycle
Description: Create three pods, patch them with Owner references such that pod1 has pod3, pod2 has pod1 and pod3 has pod2 as owner references respectively. Delete pod1 MUST delete all pods. The dependency cycle MUST not block the garbage collection.
*/

View File

@ -24,7 +24,7 @@ import (
"sync"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/intstr"
@ -228,7 +228,7 @@ var _ = SIGDescribe("Namespaces [Serial]", func() {
f := framework.NewDefaultFramework("namespaces")
/*
Release : v1.11
Release: v1.11
Testname: namespace-deletion-removes-pods
Description: Ensure that if a namespace is deleted then all pods are removed from that namespace.
*/
@ -236,7 +236,7 @@ var _ = SIGDescribe("Namespaces [Serial]", func() {
func() { ensurePodsAreRemovedWhenNamespaceIsDeleted(f) })
/*
Release : v1.11
Release: v1.11
Testname: namespace-deletion-removes-services
Description: Ensure that if a namespace is deleted then all services are removed from that namespace.
*/
@ -251,7 +251,7 @@ var _ = SIGDescribe("Namespaces [Serial]", func() {
func() { extinguish(f, 100, 0, 150) })
/*
Release : v1.18
Release: v1.18
Testname: Namespace patching
Description: A Namespace is created.
The Namespace is patched.

View File

@ -17,9 +17,10 @@ limitations under the License.
package apimachinery
import (
"regexp"
"k8s.io/apimachinery/pkg/version"
"k8s.io/kubernetes/test/e2e/framework"
"regexp"
"github.com/onsi/ginkgo"
)
@ -28,7 +29,7 @@ var _ = SIGDescribe("server version", func() {
f := framework.NewDefaultFramework("server-version")
/*
Release : v1.19
Release: v1.19
Testname: Confirm a server version
Description: Ensure that an API server version can be retrieved.
Both the major and minor versions MUST only be an integer.

View File

@ -146,7 +146,7 @@ var _ = SIGDescribe("Servers with support for Table transformation", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: API metadata HTTP return
Description: Issue a HTTP request to the API.
HTTP request MUST return a HTTP status code of 406.

View File

@ -22,7 +22,7 @@ import (
"math/rand"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
apiequality "k8s.io/apimachinery/pkg/api/equality"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
@ -46,7 +46,7 @@ var _ = SIGDescribe("Watchers", func() {
f := framework.NewDefaultFramework("watch")
/*
Release : v1.11
Release: v1.11
Testname: watch-configmaps-with-multiple-watchers
Description: Ensure that multiple watchers are able to receive all add,
update, and delete notifications on configmaps that match a label selector and do
@ -133,7 +133,7 @@ var _ = SIGDescribe("Watchers", func() {
})
/*
Release : v1.11
Release: v1.11
Testname: watch-configmaps-from-resource-version
Description: Ensure that a watch can be opened from a particular resource version
in the past and only notifications happening after that resource version are observed.
@ -181,7 +181,7 @@ var _ = SIGDescribe("Watchers", func() {
})
/*
Release : v1.11
Release: v1.11
Testname: watch-configmaps-closed-and-restarted
Description: Ensure that a watch can be reopened from the last resource version
observed by the previous watch, and it will continue delivering notifications from
@ -247,7 +247,7 @@ var _ = SIGDescribe("Watchers", func() {
})
/*
Release : v1.11
Release: v1.11
Testname: watch-configmaps-label-changed
Description: Ensure that a watched object stops meeting the requirements of
a watch's selector, the watch will observe a delete, and will not observe
@ -325,7 +325,7 @@ var _ = SIGDescribe("Watchers", func() {
/*
Testname: watch-consistency
Release : v1.15
Release: v1.15
Description: Ensure that concurrent watches are consistent with each other by initiating an additional watch
for events received from the first watch, initiated at the resource version of the event, and checking that all
resource versions of all events match. Events are produced from writes on a background goroutine.

View File

@ -104,7 +104,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, discovery document
Description: The admissionregistration.k8s.io API group MUST exists in the /apis discovery document.
The admissionregistration.k8s.io/v1 API group/version MUST exists in the /apis discovery document.
@ -183,7 +183,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, deny create
Description: Register an admission webhook configuration that admits pod and configmap. Attempts to create
non-compliant pods and configmaps, or update/patch compliant pods and configmaps to be non-compliant MUST
@ -198,7 +198,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, deny attach
Description: Register an admission webhook configuration that denies connecting to a pod's attach sub-resource.
Attempts to attach MUST be denied.
@ -210,7 +210,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, deny custom resource create and delete
Description: Register an admission webhook configuration that denies creation, update and deletion of
custom resources. Attempts to create, update and delete custom resources MUST be denied.
@ -228,7 +228,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, fail closed
Description: Register a webhook with a fail closed policy and without CA bundle so that it cannot be called.
Attempt operations that require the admission webhook; all MUST be denied.
@ -240,7 +240,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, ordered mutation
Description: Register a mutating webhook configuration with two webhooks that admit configmaps, one that
adds a data key if the configmap already has a specific key, and another that adds a key if the key added by
@ -253,7 +253,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, mutation with defaulting
Description: Register a mutating webhook that adds an InitContainer to pods. Attempt to create a pod;
the InitContainer MUST be added the TerminationMessagePolicy MUST be defaulted.
@ -265,7 +265,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, admission control not allowed on webhook configuration objects
Description: Register webhooks that mutate and deny deletion of webhook configuration objects. Attempt to create
and delete a webhook configuration object; both operations MUST be allowed and the webhook configuration object
@ -280,7 +280,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, mutate custom resource
Description: Register a webhook that mutates a custom resource. Attempt to create custom resource object;
the custom resource MUST be mutated.
@ -297,7 +297,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, deny custom resource definition
Description: Register a webhook that denies custom resource definition create. Attempt to create a
custom resource definition; the create request MUST be denied.
@ -310,7 +310,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, mutate custom resource with different stored version
Description: Register a webhook that mutates custom resources on create and update. Register a custom resource
definition using v1 as stored version. Create a custom resource. Patch the custom resource definition to use v2 as
@ -329,7 +329,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, mutate custom resource with pruning
Description: Register mutating webhooks that adds fields to custom objects. Register a custom resource definition
with a schema that includes only one of the data keys added by the webhooks. Attempt to a custom resource;
@ -367,7 +367,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, honor timeout
Description: Using a webhook that waits 5 seconds before admitting objects, configure the webhook with combinations
of timeouts and failure policy values. Attempt to create a config map with each combination. Requests MUST
@ -401,7 +401,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, update validating webhook
Description: Register a validating admission webhook configuration. Update the webhook to not apply to the create
operation and attempt to create an object; the webhook MUST NOT deny the create. Patch the webhook to apply to the
@ -496,7 +496,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, update mutating webhook
Description: Register a mutating admission webhook configuration. Update the webhook to not apply to the create
operation and attempt to create an object; the webhook MUST NOT mutate the object. Patch the webhook to apply to the
@ -569,7 +569,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, list validating webhooks
Description: Create 10 validating webhook configurations, all with a label. Attempt to list the webhook
configurations matching the label; all the created webhook configurations MUST be present. Attempt to create an
@ -643,7 +643,7 @@ var _ = SIGDescribe("AdmissionWebhook [Privileged:ClusterAdmin]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Admission webhook, list mutating webhooks
Description: Create 10 mutating webhook configurations, all with a label. Attempt to list the webhook
configurations matching the label; all the created webhook configurations MUST be present. Attempt to create an

View File

@ -146,7 +146,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
})
/*
Release : v1.10
Release: v1.10
Testname: DaemonSet-Creation
Description: A conformant Kubernetes distribution MUST support the creation of DaemonSets. When a DaemonSet
Pod is deleted, the DaemonSet controller MUST create a replacement Pod.
@ -174,7 +174,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
})
/*
Release : v1.10
Release: v1.10
Testname: DaemonSet-NodeSelection
Description: A conformant Kubernetes distribution MUST support DaemonSet Pod node selection via label
selectors.
@ -275,7 +275,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
})
/*
Release : v1.10
Release: v1.10
Testname: DaemonSet-FailedPodCreation
Description: A conformant Kubernetes distribution MUST create new DaemonSet Pods when they fail.
*/
@ -355,7 +355,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
})
/*
Release : v1.10
Release: v1.10
Testname: DaemonSet-RollingUpdate
Description: A conformant Kubernetes distribution MUST support DaemonSet RollingUpdates.
*/
@ -412,7 +412,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
})
/*
Release : v1.10
Release: v1.10
Testname: DaemonSet-Rollback
Description: A conformant Kubernetes distribution MUST support automated, minimally disruptive
rollback of updates to a DaemonSet.

View File

@ -83,7 +83,7 @@ var _ = SIGDescribe("Deployment", func() {
testDeleteDeployment(f)
})
/*
Release : v1.12
Release: v1.12
Testname: Deployment RollingUpdate
Description: A conformant Kubernetes distribution MUST support the Deployment with RollingUpdate strategy.
*/
@ -91,7 +91,7 @@ var _ = SIGDescribe("Deployment", func() {
testRollingUpdateDeployment(f)
})
/*
Release : v1.12
Release: v1.12
Testname: Deployment Recreate
Description: A conformant Kubernetes distribution MUST support the Deployment with Recreate strategy.
*/
@ -99,7 +99,7 @@ var _ = SIGDescribe("Deployment", func() {
testRecreateDeployment(f)
})
/*
Release : v1.12
Release: v1.12
Testname: Deployment RevisionHistoryLimit
Description: A conformant Kubernetes distribution MUST clean up Deployment's ReplicaSets based on
the Deployment's `.spec.revisionHistoryLimit`.
@ -108,7 +108,7 @@ var _ = SIGDescribe("Deployment", func() {
testDeploymentCleanUpPolicy(f)
})
/*
Release : v1.12
Release: v1.12
Testname: Deployment Rollover
Description: A conformant Kubernetes distribution MUST support Deployment rollover,
i.e. allow arbitrary number of changes to desired state during rolling update
@ -124,7 +124,7 @@ var _ = SIGDescribe("Deployment", func() {
testDeploymentsControllerRef(f)
})
/*
Release : v1.12
Release: v1.12
Testname: Deployment Proportional Scaling
Description: A conformant Kubernetes distribution MUST support Deployment
proportional scaling, i.e. proportionally scale a Deployment's ReplicaSets

View File

@ -92,7 +92,7 @@ var _ = SIGDescribe("Job", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Jobs, completion after task failure
Description: Explicitly cause the tasks to fail once initially. After restarting, the Job MUST
execute to completion.
@ -148,7 +148,7 @@ var _ = SIGDescribe("Job", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Jobs, active pods, graceful termination
Description: Create a job. Ensure the active pods reflect paralellism in the namespace and delete the job. Job MUST be deleted successfully.
*/
@ -172,7 +172,7 @@ var _ = SIGDescribe("Job", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Jobs, orphan pods, re-adoption
Description: Create a parallel job. The number of Pods MUST equal the level of parallelism.
Orphan a Pod by modifying its owner reference. The Job MUST re-adopt the orphan pod.

View File

@ -57,7 +57,7 @@ var _ = SIGDescribe("ReplicationController", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Replication Controller, run basic image
Description: Replication Controller MUST create a Pod with Basic Image and MUST run the service with the provided image. Image MUST be tested by dialing into the service listening through TCP, UDP and HTTP.
*/
@ -73,7 +73,7 @@ var _ = SIGDescribe("ReplicationController", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Replication Controller, check for issues like exceeding allocated quota
Description: Attempt to create a Replication Controller with pods exceeding the namespace quota. The creation MUST fail
*/
@ -82,7 +82,7 @@ var _ = SIGDescribe("ReplicationController", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Replication Controller, adopt matching pods
Description: An ownerless Pod is created, then a Replication Controller (RC) is created whose label selector will match the Pod. The RC MUST either adopt the Pod or delete and replace it with a new Pod
*/
@ -91,7 +91,7 @@ var _ = SIGDescribe("ReplicationController", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Replication Controller, release pods
Description: A Replication Controller (RC) is created, and its Pods are created. When the labels on one of the Pods change to no longer match the RC's label selector, the RC MUST release the Pod and update the Pod's owner references.
*/

View File

@ -87,7 +87,7 @@ var _ = SIGDescribe("ReplicaSet", func() {
f := framework.NewDefaultFramework("replicaset")
/*
Release : v1.9
Release: v1.9
Testname: Replica Set, run basic image
Description: Create a ReplicaSet with a Pod and a single Container. Make sure that the Pod is running. Pod SHOULD send a valid response when queried.
*/
@ -107,7 +107,7 @@ var _ = SIGDescribe("ReplicaSet", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Replica Set, adopt matching pods and release non matching pods
Description: A Pod is created, then a Replica Set (RS) whose label selector will match the Pod. The RS MUST either adopt the Pod or delete and replace it with a new Pod. When the labels on one of the Pods owned by the RS change to no longer match the RS's label selector, the RS MUST release the Pod and update the Pod's owner references
*/

View File

@ -289,7 +289,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: StatefulSet, Rolling Update
Description: StatefulSet MUST support the RollingUpdate strategy to automatically replace Pods one at a time when the Pod template changes. The StatefulSet's status MUST indicate the CurrentRevision and UpdateRevision. If the template is changed to match a prior revision, StatefulSet MUST detect this as a rollback instead of creating a new revision. This test does not depend on a preexisting default StorageClass or a dynamic provisioner.
*/
@ -300,7 +300,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: StatefulSet, Rolling Update with Partition
Description: StatefulSet's RollingUpdate strategy MUST support the Partition parameter for canaries and phased rollouts. If a Pod is deleted while a rolling update is in progress, StatefulSet MUST restore the Pod without violating the Partition. This test does not depend on a preexisting default StorageClass or a dynamic provisioner.
*/
@ -570,7 +570,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: StatefulSet, Scaling
Description: StatefulSet MUST create Pods in ascending order by ordinal index when scaling up, and delete Pods in descending order when scaling down. Scaling up or down MUST pause if any Pods belonging to the StatefulSet are unhealthy. This test does not depend on a preexisting default StorageClass or a dynamic provisioner.
*/
@ -680,7 +680,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: StatefulSet, Burst Scaling
Description: StatefulSet MUST support the Parallel PodManagementPolicy for burst scaling. This test does not depend on a preexisting default StorageClass or a dynamic provisioner.
*/
@ -722,7 +722,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: StatefulSet, Recreate Failed Pod
Description: StatefulSet MUST delete and recreate Pods it owns that go into a Failed state, such as when they are rejected or evicted by a Node. This test does not depend on a preexisting default StorageClass or a dynamic provisioner.
*/
@ -830,7 +830,7 @@ var _ = SIGDescribe("StatefulSet", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: StatefulSet resource Replica scaling
Description: Create a StatefulSet resource.
Newly created StatefulSet resource MUST have a scale of one.

View File

@ -35,7 +35,7 @@ var _ = ginkgo.Describe("[sig-node] ConfigMap", func() {
f := framework.NewDefaultFramework("configmap")
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap, from environment field
Description: Create a Pod with an environment variable value set using a value from ConfigMap. A ConfigMap value MUST be accessible in the container environment.
*/
@ -128,7 +128,7 @@ var _ = ginkgo.Describe("[sig-node] ConfigMap", func() {
})
/*
Release : v1.14
Release: v1.14
Testname: ConfigMap, with empty-key
Description: Attempt to create a ConfigMap with an empty key. The creation MUST fail.
*/
@ -158,7 +158,7 @@ var _ = ginkgo.Describe("[sig-node] ConfigMap", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: ConfigMap lifecycle
Description: Attempt to create a ConfigMap. Patch the created ConfigMap. Fetching the ConfigMap MUST reflect changes.
By fetching all the ConfigMaps via a Label selector it MUST find the ConfigMap by it's static label and updated value. The ConfigMap must be deleted by Collection.

View File

@ -23,7 +23,7 @@ import (
"github.com/onsi/ginkgo"
"github.com/onsi/gomega"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
@ -37,7 +37,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
f := framework.NewDefaultFramework("configmap")
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, without mapping
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The data content of the file MUST be readable and verified and file modes MUST default to 0x644.
*/
@ -46,7 +46,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, without mapping, volume mode set
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. File mode is changed to a custom value of '0x400'. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The data content of the file MUST be readable and verified and file modes MUST be set to the custom value of '0x400'
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -64,7 +64,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, without mapping, non-root user
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. Pod is run as a non-root user with uid=1000. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The file on the volume MUST have file mode set to default value of 0x644.
*/
@ -79,7 +79,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, with mapping
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. Files are mapped to a path in the volume. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The data content of the file MUST be readable and verified and file modes MUST default to 0x644.
*/
@ -88,7 +88,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, with mapping, volume mode set
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. Files are mapped to a path in the volume. File mode is changed to a custom value of '0x400'. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The data content of the file MUST be readable and verified and file modes MUST be set to the custom value of '0x400'
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -99,7 +99,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, with mapping, non-root user
Description: Create a ConfigMap, create a Pod that mounts a volume and populates the volume with data stored in the ConfigMap. Files are mapped to a path in the volume. Pod is run as a non-root user with uid=1000. The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount. The file on the volume MUST have file mode set to default value of 0x644.
*/
@ -114,7 +114,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, update
Description: The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount that is mapped to custom path in the Pod. When the ConfigMap is updated the change to the config map MUST be verified by reading the content from the mounted file in the Pod.
*/
@ -293,7 +293,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, create, update and delete
Description: The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount that is mapped to custom path in the Pod. When the config map is updated the change to the config map MUST be verified by reading the content from the mounted file in the Pod. Also when the item(file) is deleted from the map that MUST result in a error reading that item(file).
*/
@ -476,7 +476,7 @@ var _ = ginkgo.Describe("[sig-storage] ConfigMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: ConfigMap Volume, multiple volume maps
Description: The ConfigMap that is created MUST be accessible to read from the newly created Pod using the volume mount that is mapped to multiple paths in the Pod. The content MUST be accessible from all the mapped volume mounts.
*/

View File

@ -56,7 +56,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod readiness probe, with initial delay
Description: Create a Pod that is configured with a initial delay set on the readiness probe. Check the Pod Start time to compare to the initial delay. The Pod MUST be ready only after the specified initial delay.
*/
@ -89,7 +89,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod readiness probe, failure
Description: Create a Pod with a readiness probe that fails consistently. When this Pod is created,
then the Pod MUST never be ready, never be running and restart count MUST be zero.
@ -115,7 +115,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, using local file, restart
Description: Create a Pod with liveness probe that uses ExecAction handler to cat /temp/health file. The Container deletes the file /temp/health after 10 second, triggering liveness probe to fail. The Pod MUST now be killed and restarted incrementing restart count to 1.
*/
@ -131,7 +131,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, using local file, no restart
Description: Pod is created with liveness probe that uses 'exec' command to cat /temp/health file. Liveness probe MUST not fail to check health and the restart count should remain 0.
*/
@ -147,7 +147,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, using http endpoint, restart
Description: A Pod is created with liveness probe on http endpoint /healthz. The http handler on the /healthz will return a http error after 10 seconds since the Pod is started. This MUST result in liveness check failure. The Pod MUST now be killed and restarted incrementing restart count to 1.
*/
@ -162,7 +162,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.18
Release: v1.18
Testname: Pod liveness probe, using tcp socket, no restart
Description: A Pod is created with liveness probe on tcp socket 8080. The http handler on port 8080 will return http errors after 10 seconds, but the socket will remain open. Liveness probe MUST not fail to check health and the restart count should remain 0.
*/
@ -177,7 +177,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, using http endpoint, multiple restarts (slow)
Description: A Pod is created with liveness probe on http endpoint /healthz. The http handler on the /healthz will return a http error after 10 seconds since the Pod is started. This MUST result in liveness check failure. The Pod MUST now be killed and restarted incrementing restart count to 1. The liveness probe must fail again after restart once the http handler for /healthz enpoind on the Pod returns an http error after 10 seconds from the start. Restart counts MUST increment everytime health check fails, measure upto 5 restart.
*/
@ -192,7 +192,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, using http endpoint, failure
Description: A Pod is created with liveness probe on http endpoint '/'. Liveness probe on this endpoint will not fail. When liveness probe does not fail then the restart count MUST remain zero.
*/
@ -208,7 +208,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pod liveness probe, docker exec, restart
Description: A Pod is created with liveness probe with a Exec action on the Pod. If the liveness probe call does not return within the timeout specified, liveness probe MUST restart the Pod.
*/
@ -227,7 +227,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.14
Release: v1.14
Testname: Pod http liveness probe, redirected to a local address
Description: A Pod is created with liveness probe on http endpoint /redirect?loc=healthz. The http handler on the /redirect will redirect to the /healthz endpoint, which will return a http error after 10 seconds since the Pod is started. This MUST result in liveness check failure. The Pod MUST now be killed and restarted incrementing restart count to 1.
*/
@ -242,7 +242,7 @@ var _ = framework.KubeDescribe("Probing container", func() {
})
/*
Release : v1.14
Release: v1.14
Testname: Pod http liveness probe, redirected to a non-local address
Description: A Pod is created with liveness probe on http endpoint /redirect with a redirect to http://0.0.0.0/. The http handler on the /redirect should not follow the redirect, but instead treat it as a success and generate an event.
*/

View File

@ -19,7 +19,7 @@ package common
import (
"github.com/onsi/gomega"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
@ -31,7 +31,7 @@ var _ = framework.KubeDescribe("Docker Containers", func() {
f := framework.NewDefaultFramework("containers")
/*
Release : v1.9
Release: v1.9
Testname: Docker containers, without command and arguments
Description: Default command and arguments from the docker image entrypoint MUST be used when Pod does not specify the container command
*/
@ -50,7 +50,7 @@ var _ = framework.KubeDescribe("Docker Containers", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Docker containers, with arguments
Description: Default command and from the docker image entrypoint MUST be used when Pod does not specify the container command but the arguments from Pod spec MUST override when specified.
*/
@ -66,7 +66,7 @@ var _ = framework.KubeDescribe("Docker Containers", func() {
// Note: when you override the entrypoint, the image's arguments (docker cmd)
// are ignored.
/*
Release : v1.9
Release: v1.9
Testname: Docker containers, with command
Description: Default command from the docker image entrypoint MUST NOT be used when Pod specifies the container command. Command from Pod spec MUST override the command in the image.
*/
@ -80,7 +80,7 @@ var _ = framework.KubeDescribe("Docker Containers", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Docker containers, with command and arguments
Description: Default command and arguments from the docker image entrypoint MUST NOT be used when Pod specifies the container command and arguments. Command and arguments from Pod spec MUST override the command and arguments in the image.
*/

View File

@ -19,7 +19,7 @@ package common
import (
"fmt"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
@ -35,7 +35,7 @@ var _ = ginkgo.Describe("[sig-node] Downward API", func() {
f := framework.NewDefaultFramework("downward-api")
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI, environment for name, namespace and ip
Description: Downward API MUST expose Pod and Container fields as environment variables. Specify Pod Name, namespace and IP as environment variable in the Pod Spec are visible at runtime in the container.
*/
@ -81,7 +81,7 @@ var _ = ginkgo.Describe("[sig-node] Downward API", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI, environment for host ip
Description: Downward API MUST expose Pod and Container fields as environment variables. Specify host IP as environment variable in the Pod Spec are visible at runtime in the container.
*/
@ -157,7 +157,7 @@ var _ = ginkgo.Describe("[sig-node] Downward API", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI, environment for CPU and memory limits and requests
Description: Downward API MUST expose CPU request and Memory request set through environment variables at runtime in the container.
*/
@ -208,7 +208,7 @@ var _ = ginkgo.Describe("[sig-node] Downward API", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI, environment for default CPU and memory limits and requests
Description: Downward API MUST expose CPU request and Memory limits set through environment variables at runtime in the container.
*/
@ -258,7 +258,7 @@ var _ = ginkgo.Describe("[sig-node] Downward API", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI, environment for Pod UID
Description: Downward API MUST expose Pod UID set through environment variables at runtime in the container.
*/

View File

@ -21,7 +21,7 @@ import (
"fmt"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
@ -44,7 +44,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, pod name
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the Pod name. The container runtime MUST be able to access Pod name from the specified path on the mounted volume.
*/
@ -58,7 +58,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, volume mode 0400
Description: A Pod is configured with DownwardAPIVolumeSource with the volumesource mode set to -r-------- and DownwardAPIVolumeFiles contains a item for the Pod name. The container runtime MUST be able to access Pod name from the specified path on the mounted volume.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -74,7 +74,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, file mode 0400
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the Pod name with the file mode set to -r--------. The container runtime MUST be able to access Pod name from the specified path on the mounted volume.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -121,7 +121,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, update label
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains list of items for each of the Pod labels. The container runtime MUST be able to access Pod labels from the specified path on the mounted volume. Update the labels by adding a new label to the running Pod. The new label MUST be available from the mounted volume.
*/
@ -153,7 +153,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, update annotations
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains list of items for each of the Pod annotations. The container runtime MUST be able to access Pod annotations from the specified path on the mounted volume. Update the annotations by adding a new annotation to the running Pod. The new annotation MUST be available from the mounted volume.
*/
@ -187,7 +187,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, CPU limits
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the CPU limits. The container runtime MUST be able to access CPU limits from the specified path on the mounted volume.
*/
@ -201,7 +201,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, memory limits
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the memory limits. The container runtime MUST be able to access memory limits from the specified path on the mounted volume.
*/
@ -215,7 +215,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, CPU request
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the CPU request. The container runtime MUST be able to access CPU request from the specified path on the mounted volume.
*/
@ -229,7 +229,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, memory request
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the memory request. The container runtime MUST be able to access memory request from the specified path on the mounted volume.
*/
@ -243,7 +243,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, CPU limit, default node allocatable
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the CPU limits. CPU limits is not specified for the container. The container runtime MUST be able to access CPU limits from the specified path on the mounted volume and the value MUST be default node allocatable.
*/
@ -255,7 +255,7 @@ var _ = ginkgo.Describe("[sig-storage] Downward API volume", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DownwardAPI volume, memory limit, default node allocatable
Description: A Pod is configured with DownwardAPIVolumeSource and DownwardAPIVolumeFiles contains a item for the memory limits. memory limits is not specified for the container. The container runtime MUST be able to access memory limits from the specified path on the mounted volume and the value MUST be default node allocatable.
*/

View File

@ -75,7 +75,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode default
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume MUST have mode set as -rwxrwxrwx and mount type set to tmpfs.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or the medium = 'Memory'.
@ -85,7 +85,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0644
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0644. The volume MUST have mode -rw-r--r-- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -95,7 +95,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0666
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0666. The volume MUST have mode -rw-rw-rw- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -105,7 +105,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0777
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0777. The volume MUST have mode set as -rwxrwxrwx and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -115,7 +115,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0644, non-root user
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0644. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rw-r--r-- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -125,7 +125,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0666,, non-root user
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0666. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rw-rw-rw- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -135,7 +135,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium memory, volume mode 0777, non-root user
Description: A Pod created with an 'emptyDir' Volume and 'medium' as 'Memory', the volume mode set to 0777. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rwxrwxrwx and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID, or the medium = 'Memory'.
@ -145,7 +145,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode default
Description: A Pod created with an 'emptyDir' Volume, the volume MUST have mode set as -rwxrwxrwx and mount type set to tmpfs.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -155,7 +155,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0644
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0644. The volume MUST have mode -rw-r--r-- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -165,7 +165,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0666
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0666. The volume MUST have mode -rw-rw-rw- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -175,7 +175,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0777
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0777. The volume MUST have mode set as -rwxrwxrwx and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -185,7 +185,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0644
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0644. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rw-r--r-- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -195,7 +195,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0666
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0666. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rw-rw-rw- and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -205,7 +205,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: EmptyDir, medium default, volume mode 0777
Description: A Pod created with an 'emptyDir' Volume, the volume mode set to 0777. Volume is mounted into the container where container is run as a non-root user. The volume MUST have mode -rwxrwxrwx and mount type set to tmpfs and the contents MUST be readable.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -215,7 +215,7 @@ var _ = ginkgo.Describe("[sig-storage] EmptyDir volumes", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: EmptyDir, Shared volumes between containers
Description: A Pod created with an 'emptyDir' Volume, should share volumes between the containeres in the pod. The two busybox image containers shoud share the volumes mounted to the pod.
The main container shoud wait until the sub container drops a file, and main container acess the shared data.

View File

@ -34,7 +34,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
f := framework.NewDefaultFramework("var-expansion")
/*
Release : v1.9
Release: v1.9
Testname: Environment variables, expansion
Description: Create a Pod with environment variables. Environment variables defined using previously defined environment variables MUST expand to proper values.
*/
@ -63,7 +63,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Environment variables, command expansion
Description: Create a Pod with environment variables and container command using them. Container command using the defined environment variables MUST expand to proper values.
*/
@ -82,7 +82,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Environment variables, command argument expansion
Description: Create a Pod with environment variables and container command arguments using them. Container command arguments using the defined environment variables MUST expand to proper values.
*/
@ -102,7 +102,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: VolumeSubpathEnvExpansion, subpath expansion
Description: Make sure a container's subpath can be set using an expansion of environment variables.
*/
@ -142,7 +142,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: VolumeSubpathEnvExpansion, subpath with backticks
Description: Make sure a container's subpath can not be set using an expansion of environment variables when backticks are supplied.
*/
@ -176,7 +176,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: VolumeSubpathEnvExpansion, subpath with absolute path
Description: Make sure a container's subpath can not be set using an expansion of environment variables when absolute path is supplied.
*/
@ -210,7 +210,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: VolumeSubpathEnvExpansion, subpath ready from failed state
Description: Verify that a failing subpath expansion can be modified during the lifecycle of a container.
*/
@ -275,7 +275,7 @@ var _ = framework.KubeDescribe("Variable Expansion", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: VolumeSubpathEnvExpansion, subpath test writes
Description: Verify that a subpath expansion can be used to write files into subpaths.
1. valid subpathexpr starts a container running

View File

@ -42,7 +42,7 @@ var _ = framework.KubeDescribe("Kubelet", func() {
podName := "busybox-scheduling-" + string(uuid.NewUUID())
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, log output, default
Description: By default the stdout and stderr from the process being executed in a pod MUST be sent to the pod's logs.
*/
@ -100,7 +100,7 @@ var _ = framework.KubeDescribe("Kubelet", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, failed pod, terminated reason
Description: Create a Pod with terminated state. Pod MUST have only one container. Container MUST be in terminated state and MUST have an terminated reason.
*/
@ -125,7 +125,7 @@ var _ = framework.KubeDescribe("Kubelet", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, failed pod, delete
Description: Create a Pod with terminated state. This terminated pod MUST be able to be deleted.
*/
@ -138,7 +138,7 @@ var _ = framework.KubeDescribe("Kubelet", func() {
podName := "busybox-host-aliases" + string(uuid.NewUUID())
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, hostAliases
Description: Create a Pod with hostAliases and a container with command to output /etc/hosts entries. Pod's logs MUST have matching entries of specified hostAliases to the output of /etc/hosts entries.
Kubernetes mounts the /etc/hosts file into its containers, however, mounting individual files is not supported on Windows Containers. For this reason, this test is marked LinuxOnly.
@ -189,7 +189,7 @@ var _ = framework.KubeDescribe("Kubelet", func() {
podName := "busybox-readonly-fs" + string(uuid.NewUUID())
/*
Release : v1.13
Release: v1.13
Testname: Kubelet, pod with read only root file system
Description: Create a Pod with security context set with ReadOnlyRootFileSystem set to true. The Pod then tries to write to the /file on the root, write operation to the root filesystem MUST fail as expected.
This test is marked LinuxOnly since Windows does not support creating containers with read-only access.

View File

@ -51,7 +51,7 @@ var _ = framework.KubeDescribe("KubeletManagedEtcHosts", func() {
}
/*
Release : v1.9
Release: v1.9
Testname: Kubelet, managed etc hosts
Description: Create a Pod with containers with hostNetwork set to false, one of the containers mounts the /etc/hosts file form the host. Create a second Pod with hostNetwork set to true.
1. The Pod with hostNetwork=false MUST have /etc/hosts of containers managed by the Kubelet.

View File

@ -53,7 +53,7 @@ var _ = framework.KubeDescribe("Lease", func() {
f := framework.NewDefaultFramework("lease-test")
/*
Release : v1.17
Release: v1.17
Testname: lease API should be available
Description: Create Lease object, and get it; create and get MUST be successful and Spec of the
read Lease MUST match Spec of original Lease. Update the Lease and get it; update and get MUST

View File

@ -21,7 +21,7 @@ import (
"strings"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/kubernetes/test/e2e/framework"
@ -92,7 +92,7 @@ var _ = framework.KubeDescribe("Container Lifecycle Hook", func() {
}
}
/*
Release : v1.9
Release: v1.9
Testname: Pod Lifecycle, post start exec hook
Description: When a post start handler is specified in the container lifecycle using a 'Exec' action, then the handler MUST be invoked after the start of the container. A server pod is created that will serve http requests, create a second pod with a container lifecycle specifying a post start that invokes the server pod using ExecAction to validate that the post start is executed.
*/
@ -108,7 +108,7 @@ var _ = framework.KubeDescribe("Container Lifecycle Hook", func() {
testPodWithHook(podWithHook)
})
/*
Release : v1.9
Release: v1.9
Testname: Pod Lifecycle, prestop exec hook
Description: When a pre-stop handler is specified in the container lifecycle using a 'Exec' action, then the handler MUST be invoked before the container is terminated. A server pod is created that will serve http requests, create a second pod with a container lifecycle specifying a pre-stop that invokes the server pod using ExecAction to validate that the pre-stop is executed.
*/
@ -124,7 +124,7 @@ var _ = framework.KubeDescribe("Container Lifecycle Hook", func() {
testPodWithHook(podWithHook)
})
/*
Release : v1.9
Release: v1.9
Testname: Pod Lifecycle, post start http hook
Description: When a post start handler is specified in the container lifecycle using a HttpGet action, then the handler MUST be invoked after the start of the container. A server pod is created that will serve http requests, create a second pod with a container lifecycle specifying a post start that invokes the server pod to validate that the post start is executed.
*/
@ -142,7 +142,7 @@ var _ = framework.KubeDescribe("Container Lifecycle Hook", func() {
testPodWithHook(podWithHook)
})
/*
Release : v1.9
Release: v1.9
Testname: Pod Lifecycle, prestop http hook
Description: When a pre-stop handler is specified in the container lifecycle using a 'HttpGet' action, then the handler MUST be invoked before the container is terminated. A server pod is created that will serve http requests, create a second pod with a container lifecycle specifying a pre-stop that invokes the server pod to validate that the pre-stop is executed.
*/

View File

@ -32,7 +32,7 @@ var _ = ginkgo.Describe("[sig-network] Networking", func() {
// expect exactly one unique hostname. Each of these endpoints reports
// its own hostname.
/*
Release : v1.9, v1.18
Release: v1.9, v1.18
Testname: Networking, intra pod http
Description: Create a hostexec pod that is capable of curl to netcat commands. Create a test Pod that will act as a webserver front end exposing ports 8080 for tcp and 8081 for udp. The netserver service proxies are created on specified number of nodes.
The kubectl exec on the webserver container MUST reach a http port on the each of service proxy endpoints in the cluster and the request MUST be successful. Container will execute curl command to reach the service port within specified max retry limit and MUST result in reporting unique hostnames.
@ -45,7 +45,7 @@ var _ = ginkgo.Describe("[sig-network] Networking", func() {
})
/*
Release : v1.9, v1.18
Release: v1.9, v1.18
Testname: Networking, intra pod udp
Description: Create a hostexec pod that is capable of curl to netcat commands. Create a test Pod that will act as a webserver front end exposing ports 8080 for tcp and 8081 for udp. The netserver service proxies are created on specified number of nodes.
The kubectl exec on the webserver container MUST reach a udp port on the each of service proxy endpoints in the cluster and the request MUST be successful. Container will execute curl command to reach the service port within specified max retry limit and MUST result in reporting unique hostnames.
@ -58,7 +58,7 @@ var _ = ginkgo.Describe("[sig-network] Networking", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Networking, intra pod http, from node
Description: Create a hostexec pod that is capable of curl to netcat commands. Create a test Pod that will act as a webserver front end exposing ports 8080 for tcp and 8081 for udp. The netserver service proxies are created on specified number of nodes.
The kubectl exec on the webserver container MUST reach a http port on the each of service proxy endpoints in the cluster using a http post(protocol=tcp) and the request MUST be successful. Container will execute curl command to reach the service port within specified max retry limit and MUST result in reporting unique hostnames.
@ -72,7 +72,7 @@ var _ = ginkgo.Describe("[sig-network] Networking", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Networking, intra pod http, from node
Description: Create a hostexec pod that is capable of curl to netcat commands. Create a test Pod that will act as a webserver front end exposing ports 8080 for tcp and 8081 for udp. The netserver service proxies are created on specified number of nodes.
The kubectl exec on the webserver container MUST reach a http port on the each of service proxy endpoints in the cluster using a http post(protocol=udp) and the request MUST be successful. Container will execute curl command to reach the service port within specified max retry limit and MUST result in reporting unique hostnames.

View File

@ -183,7 +183,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, assigned hostip
Description: Create a Pod. Pod status MUST return successfully and contains a valid IP address.
*/
@ -205,7 +205,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, lifecycle
Description: A Pod is created with a unique label. Pod MUST be accessible when queried using the label selector upon creation. Add a watch, check if the Pod is running. Pod then deleted, The pod deletion timestamp is observed. The watch MUST return the pod deleted event. Query with the original selector for the Pod MUST return empty list.
*/
@ -336,7 +336,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, update
Description: Create a Pod with a unique label. Query for the Pod with the label as selector MUST be successful. Update the pod to change the value of the Label. Query for the Pod with the new value for the label MUST be successful.
Behaviors:
@ -393,7 +393,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, ActiveDeadlineSeconds
Description: Create a Pod with a unique label. Query for the Pod with the label as selector MUST be successful. The Pod is updated with ActiveDeadlineSeconds set on the Pod spec. Pod MUST terminate of the specified time elapses.
*/
@ -439,7 +439,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, service environment variables
Description: Create a server Pod listening on port 9376. A Service called fooservice is created for the server Pod listening on port 8765 targeting port 8080. If a new Pod is created in the cluster then the Pod MUST have the fooservice environment variables available from this new Pod. The new create Pod MUST have environment variables such as FOOSERVICE_SERVICE_HOST, FOOSERVICE_SERVICE_PORT, FOOSERVICE_PORT, FOOSERVICE_PORT_8765_TCP_PORT, FOOSERVICE_PORT_8765_TCP_PROTO, FOOSERVICE_PORT_8765_TCP and FOOSERVICE_PORT_8765_TCP_ADDR that are populated with proper values.
*/
@ -530,7 +530,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Pods, remote command execution over websocket
Description: A Pod is created. Websocket is created to retrieve exec command output from this pod.
Message retrieved form Websocket MUST match with expected exec command output.
@ -612,7 +612,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.13
Release: v1.13
Testname: Pods, logs from websockets
Description: A Pod is created. Websocket is created to retrieve log of a container from this pod.
Message retrieved form Websocket MUST match with container's output.
@ -833,7 +833,7 @@ var _ = framework.KubeDescribe("Pods", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Pods, delete a collection
Description: A set of pods is created with a label selector which MUST be found when listed.
The set of pods is deleted and MUST NOT show up when listed by its label selector.

View File

@ -20,6 +20,8 @@ import (
"context"
"encoding/json"
"time"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/types"
@ -27,7 +29,6 @@ import (
"k8s.io/apimachinery/pkg/util/wait"
"k8s.io/kubernetes/test/e2e/framework"
imageutils "k8s.io/kubernetes/test/utils/image"
"time"
"github.com/onsi/ginkgo"
)
@ -40,7 +41,7 @@ const (
var _ = ginkgo.Describe("[sig-node] PodTemplates", func() {
f := framework.NewDefaultFramework("podtemplate")
/*
Release : v1.19
Release: v1.19
Testname: PodTemplate lifecycle
Description: Attempt to create a PodTemplate. Patch the created PodTemplate. Fetching the PodTemplate MUST reflect changes.
By fetching all the PodTemplates via a Label selector it MUST find the PodTemplate by it's static label and updated value. The PodTemplate must be deleted.
@ -109,7 +110,7 @@ var _ = ginkgo.Describe("[sig-node] PodTemplates", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: PodTemplate, delete a collection
Description: A set of Pod Templates is created with a label selector which MUST be found when listed.
The set of Pod Templates is deleted and MUST NOT show up when listed by its label selector.

View File

@ -20,7 +20,7 @@ import (
"context"
"fmt"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
@ -34,7 +34,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected combined", func() {
// Test multiple projections
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, multiple projections
Description: A Pod is created with a projected volume source for secrets, configMap and downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the secrets, configMap values and the cpu and memory limits as well as cpu and memory requests from the mounted DownwardAPIVolumeFiles.
*/

View File

@ -21,7 +21,7 @@ import (
"fmt"
"path"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
@ -37,7 +37,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
f := framework.NewDefaultFramework("projected")
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, volume mode default
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap with default permission mode. Pod MUST be able to read the content of the ConfigMap successfully and the mode on the volume MUST be -rw-r--r--.
*/
@ -46,7 +46,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, volume mode 0400
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap with permission mode set to 0400. Pod MUST be able to read the content of the ConfigMap successfully and the mode on the volume MUST be -r--------.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -64,7 +64,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, non-root user
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap as non-root user with uid 1000. Pod MUST be able to read the content of the ConfigMap successfully and the mode on the volume MUST be -rw-r--r--.
*/
@ -79,7 +79,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, mapped
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap with default permission mode. The ConfigMap is also mapped to a custom path. Pod MUST be able to read the content of the ConfigMap from the custom location successfully and the mode on the volume MUST be -rw-r--r--.
*/
@ -88,7 +88,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, mapped, volume mode 0400
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap with permission mode set to 0400. The ConfigMap is also mapped to a custom path. Pod MUST be able to read the content of the ConfigMap from the custom location successfully and the mode on the volume MUST be -r--r--r--.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -99,7 +99,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, mapped, non-root user
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap as non-root user with uid 1000. The ConfigMap is also mapped to a custom path. Pod MUST be able to read the content of the ConfigMap from the custom location successfully and the mode on the volume MUST be -r--r--r--.
*/
@ -114,7 +114,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, update
Description: A Pod is created with projected volume source 'ConfigMap' to store a configMap and performs a create and update to new value. Pod MUST be able to create the configMap with value-1. Pod MUST be able to update the value in the confgiMap to value-2.
*/
@ -202,7 +202,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, create, update and delete
Description: Create a Pod with three containers with ConfigMaps namely a create, update and delete container. Create Container when started MUST not have configMap, update and delete containers MUST be created with a ConfigMap value as 'value-1'. Create a configMap in the create container, the Pod MUST be able to read the configMap from the create container. Update the configMap in the update container, Pod MUST be able to read the updated configMap value. Delete the configMap in the delete container. Pod MUST fail to read the configMap from the delete container.
*/
@ -403,7 +403,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected configMap", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, ConfigMap, multiple volume paths
Description: A Pod is created with a projected volume source 'ConfigMap' to store a configMap. The configMap is mapped to two different volume mounts. Pod MUST be able to read the content of the configMap successfully from the two volume mounts.
*/

View File

@ -21,7 +21,7 @@ import (
"fmt"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
@ -44,7 +44,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, pod name
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the pod name from the mounted DownwardAPIVolumeFiles.
*/
@ -58,7 +58,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, volume mode 0400
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. The default mode for the volume mount is set to 0400. Pod MUST be able to read the pod name from the mounted DownwardAPIVolumeFiles and the volume mode must be -r--------.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -74,7 +74,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, volume mode 0400
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. The default mode for the volume mount is set to 0400. Pod MUST be able to read the pod name from the mounted DownwardAPIVolumeFiles and the volume mode must be -r--------.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -121,7 +121,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, update labels
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests and label items. Pod MUST be able to read the labels from the mounted DownwardAPIVolumeFiles. Labels are then updated. Pod MUST be able to read the updated values for the Labels.
*/
@ -153,7 +153,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, update annotation
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests and annotation items. Pod MUST be able to read the annotations from the mounted DownwardAPIVolumeFiles. Annotations are then updated. Pod MUST be able to read the updated values for the Annotations.
*/
@ -187,7 +187,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, CPU limits
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the cpu limits from the mounted DownwardAPIVolumeFiles.
*/
@ -201,7 +201,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, memory limits
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the memory limits from the mounted DownwardAPIVolumeFiles.
*/
@ -215,7 +215,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, CPU request
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the cpu request from the mounted DownwardAPIVolumeFiles.
*/
@ -229,7 +229,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, memory request
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. Pod MUST be able to read the memory request from the mounted DownwardAPIVolumeFiles.
*/
@ -243,7 +243,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, CPU limit, node allocatable
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. The CPU and memory resources for requests and limits are NOT specified for the container. Pod MUST be able to read the default cpu limits from the mounted DownwardAPIVolumeFiles.
*/
@ -255,7 +255,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected downwardAPI", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, DownwardAPI, memory limit, node allocatable
Description: A Pod is created with a projected volume source for downwardAPI with pod name, cpu and memory limits and cpu and memory requests. The CPU and memory resources for requests and limits are NOT specified for the container. Pod MUST be able to read the default memory limits from the mounted DownwardAPIVolumeFiles.
*/

View File

@ -21,7 +21,7 @@ import (
"fmt"
"path"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
@ -36,7 +36,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
f := framework.NewDefaultFramework("projected")
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, volume mode default
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key with default permission mode. Pod MUST be able to read the content of the key successfully and the mode MUST be -rw-r--r-- by default.
*/
@ -45,7 +45,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, volume mode 0400
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key with permission mode set to 0x400 on the Pod. Pod MUST be able to read the content of the key successfully and the mode MUST be -r--------.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -56,7 +56,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Project Volume, Secrets, non-root, custom fsGroup
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key. The volume has permission mode set to 0440, fsgroup set to 1001 and user set to non-root uid of 1000. Pod MUST be able to read the content of the key successfully and the mode MUST be -r--r-----.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -68,7 +68,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, mapped
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key with default permission mode. The secret is also mapped to a custom path. Pod MUST be able to read the content of the key successfully and the mode MUST be -r--------on the mapped volume.
*/
@ -77,7 +77,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, mapped, volume mode 0400
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key with permission mode set to 0400. The secret is also mapped to a specific name. Pod MUST be able to read the content of the key successfully and the mode MUST be -r-------- on the mapped volume.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -109,7 +109,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, mapped, multiple paths
Description: A Pod is created with a projected volume source 'secret' to store a secret with a specified key. The secret is mapped to two different volume mounts. Pod MUST be able to read the content of the key successfully from the two volume mounts and the mode MUST be -r-------- on the mapped volumes.
*/
@ -205,7 +205,7 @@ var _ = ginkgo.Describe("[sig-storage] Projected secret", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Projected Volume, Secrets, create, update delete
Description: Create a Pod with three containers with secrets namely a create, update and delete container. Create Container when started MUST no have a secret, update and delete containers MUST be created with a secret value. Create a secret in the create container, the Pod MUST be able to read the secret from the create container. Update the secret in the update container, Pod MUST be able to read the updated secret value. Delete the secret in the delete container. Pod MUST fail to read the secret from the delete container.
*/

View File

@ -42,7 +42,7 @@ var _ = framework.KubeDescribe("Container Runtime", func() {
ginkgo.Context("when starting a container that exits", func() {
/*
Release : v1.13
Release: v1.13
Testname: Container Runtime, Restart Policy, Pod Phases
Description: If the restart policy is set to 'Always', Pod MUST be restarted when terminated, If restart policy is 'OnFailure', Pod MUST be started only if it is terminated with non-zero exit code. If the restart policy is 'Never', Pod MUST never be restarted. All these three test cases MUST verify the restart counts accordingly.
*/

View File

@ -21,13 +21,14 @@ import (
"encoding/json"
"fmt"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
"k8s.io/kubernetes/test/e2e/framework"
imageutils "k8s.io/kubernetes/test/utils/image"
"encoding/base64"
"github.com/onsi/ginkgo"
"k8s.io/apimachinery/pkg/types"
)
@ -36,7 +37,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Secrets", func() {
f := framework.NewDefaultFramework("secrets")
/*
Release : v1.9
Release: v1.9
Testname: Secrets, pod environment field
Description: Create a secret. Create a Pod with Container that declares a environment variable which references the secret created to extract a key value from the secret. Pod MUST have the environment variable that contains proper value for the key to the secret.
*/
@ -85,7 +86,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets, pod environment from source
Description: Create a secret. Create a Pod with Container that declares a environment variable using 'EnvFrom' which references the secret created to extract a key value from the secret. Pod MUST have the environment variable that contains proper value for the key to the secret.
*/
@ -130,7 +131,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Secrets", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Secrets, with empty-key
Description: Attempt to create a Secret with an empty key. The creation MUST fail.
*/
@ -140,7 +141,7 @@ var _ = ginkgo.Describe("[sig-api-machinery] Secrets", func() {
})
/*
Release : v1.18
Release: v1.18
Testname: Secret patching
Description: A Secret is created.
Listing all Secrets MUST return an empty list.

View File

@ -21,7 +21,7 @@ import (
"fmt"
"path"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/uuid"
@ -37,7 +37,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
f := framework.NewDefaultFramework("secrets")
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, default
Description: Create a secret. Create a Pod with secret volume source configured into the container. Pod MUST be able to read the secret from the mounted volume from the container runtime and the file mode of the secret MUST be -rw-r--r-- by default.
*/
@ -46,7 +46,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, volume mode 0400
Description: Create a secret. Create a Pod with secret volume source configured into the container with file mode set to 0x400. Pod MUST be able to read the secret from the mounted volume from the container runtime and the file mode of the secret MUST be -r-------- by default.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -57,7 +57,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, volume mode 0440, fsGroup 1001 and uid 1000
Description: Create a secret. Create a Pod with secret volume source configured into the container with file mode set to 0x440 as a non-root user with uid 1000 and fsGroup id 1001. Pod MUST be able to read the secret from the mounted volume from the container runtime and the file mode of the secret MUST be -r--r-----by default.
This test is marked LinuxOnly since Windows does not support setting specific file permissions, or running as UID / GID.
@ -69,7 +69,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, mapping
Description: Create a secret. Create a Pod with secret volume source configured into the container with a custom path. Pod MUST be able to read the secret from the mounted volume from the specified custom path. The file mode of the secret MUST be -rw-r--r-- by default.
*/
@ -78,7 +78,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, mapping, volume mode 0400
Description: Create a secret. Create a Pod with secret volume source configured into the container with a custom path and file mode set to 0x400. Pod MUST be able to read the secret from the mounted volume from the specified custom path. The file mode of the secret MUST be -r--r--r--.
This test is marked LinuxOnly since Windows does not support setting specific file permissions.
@ -89,7 +89,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: Secrets Volume, volume mode default, secret with same name in different namespace
Description: Create a secret with same name in two namespaces. Create a Pod with secret volume source configured into the container. Pod MUST be able to read the secrets from the mounted volume from the container runtime and only secrets which are associated with namespace where pod is created. The file mode of the secret MUST be -rw-r--r-- by default.
*/
@ -115,7 +115,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, mapping multiple volume paths
Description: Create a secret. Create a Pod with two secret volume sources configured into the container in to two different custom paths. Pod MUST be able to read the secret from the both the mounted volumes from the two specified custom paths.
*/
@ -195,7 +195,7 @@ var _ = ginkgo.Describe("[sig-storage] Secrets", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Secrets Volume, create, update and delete
Description: Create a Pod with three containers with secrets volume sources namely a create, update and delete container. Create Container when started MUST not have secret, update and delete containers MUST be created with a secret value. Create a secret in the create container, the Pod MUST be able to read the secret from the create container. Update the secret in the update container, Pod MUST be able to read the updated secret value. Delete the secret in the delete container. Pod MUST fail to read the secret from the delete container.
*/

View File

@ -75,7 +75,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
}
/*
Release : v1.15
Release: v1.15
Testname: Security Context, runAsUser=65534
Description: Container is created with runAsUser option by passing uid 65534 to run as unpriviledged user. Pod MUST be in Succeeded phase.
[LinuxOnly]: This test is marked as LinuxOnly since Windows does not support running as UID / GID.
@ -85,7 +85,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Security Context, runAsUser=0
Description: Container is created with runAsUser option by passing uid 0 to run as root priviledged user. Pod MUST be in Succeeded phase.
This e2e can not be promoted to Conformance because a Conformant platform may not allow to run containers with 'uid 0' or running privileged operations.
@ -202,7 +202,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
}
/*
Release : v1.15
Release: v1.15
Testname: Security Context, readOnlyRootFilesystem=true.
Description: Container is configured to run with readOnlyRootFilesystem to true which will force containers to run with a read only root file system.
Write operation MUST NOT be allowed and Pod MUST be in Failed state.
@ -214,7 +214,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Security Context, readOnlyRootFilesystem=false.
Description: Container is configured to run with readOnlyRootFilesystem to false.
Write operation MUST be allowed and Pod MUST be in Succeeded state.
@ -256,7 +256,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
return podName
}
/*
Release : v1.15
Release: v1.15
Testname: Security Context, privileged=false.
Description: Create a container to run in unprivileged mode by setting pod's SecurityContext Privileged option as false. Pod MUST be in Succeeded phase.
[LinuxOnly]: This test is marked as LinuxOnly since it runs a Linux-specific command.
@ -319,7 +319,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
}
/*
Release : v1.15
Release: v1.15
Testname: Security Context, allowPrivilegeEscalation unset, uid != 0.
Description: Configuring the allowPrivilegeEscalation unset, allows the privilege escalation operation.
A container is configured with allowPrivilegeEscalation not specified (nil) and a given uid which is not 0.
@ -335,7 +335,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Security Context, allowPrivilegeEscalation=false.
Description: Configuring the allowPrivilegeEscalation to false, does not allow the privilege escalation operation.
A container is configured with allowPrivilegeEscalation=false and a given uid (1000) which is not 0.
@ -351,7 +351,7 @@ var _ = framework.KubeDescribe("Security Context", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Security Context, allowPrivilegeEscalation=true.
Description: Configuring the allowPrivilegeEscalation to true, allows the privilege escalation operation.
A container is configured with allowPrivilegeEscalation=true and a given uid (1000) which is not 0.

View File

@ -85,7 +85,7 @@ var _ = common.SIGDescribe("Events API", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: New Event resource lifecycle, testing a single event
Description: Create an event, the event MUST exist.
The event is patched with a new note, the check MUST have the update note.
@ -180,7 +180,7 @@ var _ = common.SIGDescribe("Events API", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: New Event resource lifecycle, testing a list of events
Description: Create a list of events, the events MUST exist.
The events are deleted and MUST NOT show up when listing all events.

View File

@ -314,7 +314,7 @@ var _ = SIGDescribe("Kubectl client", func() {
nautilus = commonutils.SubstituteImageName(string(data))
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, replication controller
Description: Create a Pod and a container with a given image. Configure replication controller to run 2 replicas. The number of running instances of the Pod MUST equal the number of replicas set on the replication controller which is 2.
*/
@ -327,7 +327,7 @@ var _ = SIGDescribe("Kubectl client", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, scale replication controller
Description: Create a Pod and a container with a given image. Configure replication controller to run 2 replicas. The number of running instances of the Pod MUST equal the number of replicas set on the replication controller which is 2. Update the replicaset to 1. Number of running instances of the Pod MUST be 1. Update the replicaset to 2. Number of running instances of the Pod MUST be 2.
*/
@ -369,7 +369,7 @@ var _ = SIGDescribe("Kubectl client", func() {
}
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, guestbook application
Description: Create Guestbook application that contains an agnhost primary server, 2 agnhost replicas, frontend application, frontend service and agnhost primary service and agnhost replica service. Using frontend service, the test will write an entry into the guestbook application which will store the entry into the backend agnhost store. Application flow MUST work as expected and the data written MUST be available to read.
*/
@ -777,7 +777,7 @@ metadata:
ginkgo.Describe("Kubectl api-versions", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, check version v1
Description: Run kubectl to get api versions, output MUST contain returned versions with 'v1' listed.
*/
@ -887,7 +887,7 @@ metadata:
ginkgo.Describe("Kubectl diff", func() {
/*
Release : v1.19
Release: v1.19
Testname: Kubectl, diff Deployment
Description: Create a Deployment with httpd image. Declare the same Deployment with a different image, busybox. Diff of live Deployment with declared Deployment MUST include the difference between live and declared image.
*/
@ -918,7 +918,7 @@ metadata:
ginkgo.Describe("Kubectl server-side dry-run", func() {
/*
Release : v1.19
Release: v1.19
Testname: Kubectl, server-side dry-run Pod
Description: The command 'kubectl run' must create a pod with the specified image name. After, the command 'kubectl replace --dry-run=server' should update the Pod with the new image name and server-side dry-run enabled. The image name must not change.
*/
@ -1078,7 +1078,7 @@ metadata:
ginkgo.Describe("Kubectl cluster-info", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, cluster info
Description: Call kubectl to get cluster-info, output MUST contain cluster-info returned and Kubernetes Master SHOULD be running.
*/
@ -1104,7 +1104,7 @@ metadata:
ginkgo.Describe("Kubectl describe", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, describe pod or rc
Description: Deploy an agnhost controller and an agnhost service. Kubectl describe pods SHOULD return the name, namespace, labels, state and other information as expected. Kubectl describe on rc, service, node and namespace SHOULD also return proper information.
*/
@ -1245,7 +1245,7 @@ metadata:
ginkgo.Describe("Kubectl expose", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, create service, replication controller
Description: Create a Pod running agnhost listening to port 6379. Using kubectl expose the agnhost primary replication controllers at port 1234. Validate that the replication controller is listening on port 1234 and the target port is set to 6379, port that agnhost primary is listening. Using kubectl expose the agnhost primary as a service at port 2345. The service MUST be listening on port 2345 and the target port is set to 6379, port that agnhost primary is listening.
*/
@ -1342,7 +1342,7 @@ metadata:
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, label update
Description: When a Pod is running, update a Label using 'kubectl label' command. The label MUST be created in the Pod. A 'kubectl get pod' with -l option on the container MUST verify that the label can be read back. Use 'kubectl label label-' to remove the label. 'kubectl get pod' with -l option SHOULD not list the deleted label as the label is removed.
*/
@ -1383,7 +1383,7 @@ metadata:
})
/*
Release : v1.12
Release: v1.12
Testname: Kubectl, copy
Description: When a Pod is running, copy a known file from it to a temporary local destination.
*/
@ -1423,7 +1423,7 @@ metadata:
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, logs
Description: When a Pod is running then it MUST generate logs.
Starting a Pod should have a expected log line. Also log command options MUST work as expected and described below.
@ -1489,7 +1489,7 @@ metadata:
ginkgo.Describe("Kubectl patch", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, patch to annotate
Description: Start running agnhost and a replication controller. When the pod is running, using 'kubectl patch' command add annotations. The annotation MUST be added to running pods and SHOULD be able to read added annotations from each of the Pods running under the replication controller.
*/
@ -1523,7 +1523,7 @@ metadata:
ginkgo.Describe("Kubectl version", func() {
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, version
Description: The command 'kubectl version' MUST return the major, minor versions, GitCommit, etc of the Client and the Server that the kubectl is configured to connect to.
*/
@ -1552,7 +1552,7 @@ metadata:
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, run pod
Description: Command 'kubectl run' MUST create a pod, when a image name is specified in the run command. After the run command there SHOULD be a pod that should exist with one container running the specified image.
*/
@ -1588,7 +1588,7 @@ metadata:
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, replace
Description: Command 'kubectl replace' on a existing Pod with a new spec MUST update the image of the container running in the Pod. A -f option to 'kubectl replace' SHOULD force to re-create the resource. The new Pod SHOULD have the container with new change to the image.
*/
@ -1628,7 +1628,7 @@ metadata:
ginkgo.Describe("Proxy server", func() {
// TODO: test proxy options (static, prefix, etc)
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, proxy port zero
Description: Start a proxy server on port zero by running 'kubectl proxy' with --port=0. Call the proxy server by requesting api versions from unix socket. The proxy server MUST provide at least one version string.
*/
@ -1653,7 +1653,7 @@ metadata:
})
/*
Release : v1.9
Release: v1.9
Testname: Kubectl, proxy socket
Description: Start a proxy server on by running 'kubectl proxy' with --unix-socket=<some path>. Call the proxy server by requesting api versions from http://locahost:0/api. The proxy server MUST provide at least one version string
*/

View File

@ -40,7 +40,7 @@ var _ = SIGDescribe("DNS", func() {
f := framework.NewDefaultFramework("dns")
/*
Release : v1.9
Release: v1.9
Testname: DNS, cluster
Description: When a Pod is created, the pod MUST be able to resolve cluster dns entries such as kubernetes.default via DNS.
*/
@ -107,7 +107,7 @@ var _ = SIGDescribe("DNS", func() {
})
/*
Release : v1.14
Release: v1.14
Testname: DNS, cluster
Description: When a Pod is created, the pod MUST be able to resolve cluster dns entries such as kubernetes.default via /etc/hosts.
*/
@ -127,7 +127,7 @@ var _ = SIGDescribe("DNS", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: DNS, services
Description: When a headless service is created, the service MUST be able to resolve all the required service endpoints. When the service is created, any pod in the same namespace must be able to resolve the service by all of the expected DNS names.
*/

View File

@ -78,7 +78,7 @@ var _ = SIGDescribe("Proxy", func() {
// using the porter image to serve content, access the content
// (of multiple pods?) from multiple (endpoints/services?)
/*
Release : v1.9
Release: v1.9
Testname: Proxy, logs service endpoint
Description: Select any node in the cluster to invoke /logs endpoint using the /nodes/proxy subresource from the kubelet port. This endpoint MUST be reachable.
*/

View File

@ -793,7 +793,7 @@ var _ = SIGDescribe("Services", func() {
// TODO: We get coverage of TCP/UDP and multi-port services through the DNS test. We should have a simpler test for multi-port TCP here.
/*
Release : v1.9
Release: v1.9
Testname: Kubernetes Service
Description: By default when a kubernetes cluster is running there MUST be a 'kubernetes' service running in the cluster.
*/
@ -803,7 +803,7 @@ var _ = SIGDescribe("Services", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Service, endpoints
Description: Create a service with a endpoint without any Pods, the service MUST run and show empty endpoints. Add a pod to the service and the service MUST validate to show all the endpoints for the ports exposed by the Pod. Add another Pod then the list of all Ports exposed by both the Pods MUST be valid and have corresponding service endpoint. Once the second Pod is deleted then set of endpoint MUST be validated to show only ports from the first container that are exposed. Once both pods are deleted the endpoints from the service MUST be empty.
*/
@ -856,7 +856,7 @@ var _ = SIGDescribe("Services", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Service, endpoints with multiple ports
Description: Create a service with two ports but no Pods are added to the service yet. The service MUST run and show empty set of endpoints. Add a Pod to the first port, service MUST list one endpoint for the Pod on that port. Add another Pod to the second port, service MUST list both the endpoints. Delete the first Pod and the service MUST list only the endpoint to the second Pod. Delete the second Pod and the service must now have empty set of endpoints.
*/
@ -1210,7 +1210,7 @@ var _ = SIGDescribe("Services", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Service, NodePort Service
Description: Create a TCP NodePort service, and test reachability from a client Pod.
The client Pod MUST be able to access the NodePort service by service name and cluster
@ -2793,7 +2793,7 @@ var _ = SIGDescribe("Services", func() {
})
/*
Release : v1.18
Release: v1.18
Testname: Find Kubernetes Service in default Namespace
Description: List all Services in all Namespaces, response MUST include a Service named Kubernetes with the Namespace of default.
*/
@ -2813,7 +2813,7 @@ var _ = SIGDescribe("Services", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Endpoint resource lifecycle
Description: Create an endpoint, the endpoint MUST exist.
The endpoint is updated with a new label, a check after the update MUST find the changes.

View File

@ -49,7 +49,7 @@ var _ = SIGDescribe("Service endpoints latency", func() {
f := framework.NewDefaultFramework("svc-latency")
/*
Release : v1.9
Release: v1.9
Testname: Service endpoint latency, thresholds
Description: Run 100 iterations of create service with the Pod running the pause image, measure the time it takes for creating the service and the endpoint with the service name is available. These durations are captured for 100 iterations, then the durations are sorted to compute 50th, 90th and 99th percentile. The single server latency MUST not exceed liberally set thresholds of 20s for 50th percentile and 50s for the 90th percentile.
*/

View File

@ -37,7 +37,7 @@ var _ = SIGDescribe("Events", func() {
f := framework.NewDefaultFramework("events")
/*
Release : v1.9
Release: v1.9
Testname: Pod events, verify event from Scheduler and Kubelet
Description: Create a Pod, make sure that the Pod can be queried. Create a event selector for the kind=Pod and the source is the Scheduler. List of the events MUST be at least one. Create a event selector for kind=Pod and the source is the Kubelet. List of the events MUST be at least one. Both Scheduler and Kubelet MUST send events when scheduling and running a Pod.
*/

View File

@ -67,7 +67,7 @@ var _ = SIGDescribe("Hostname of Pod [Feature:SetHostnameAsFQDN]", func() {
f := framework.NewDefaultFramework("hostfqdn")
/*
Release : v1.19
Release: v1.19
Testname: Create Pod without fully qualified domain name (FQDN)
Description: A Pod that does not define the subdomain field in it spec, does not have FQDN.
*/
@ -80,7 +80,7 @@ var _ = SIGDescribe("Hostname of Pod [Feature:SetHostnameAsFQDN]", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Create Pod without FQDN, setHostnameAsFQDN field set to true
Description: A Pod that does not define the subdomain field in it spec, does not have FQDN.
Hence, SetHostnameAsFQDN feature has no effect.
@ -97,7 +97,7 @@ var _ = SIGDescribe("Hostname of Pod [Feature:SetHostnameAsFQDN]", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Create Pod with FQDN, setHostnameAsFQDN field not defined.
Description: A Pod that defines the subdomain field in it spec has FQDN.
hostname command returns shortname (pod name in this case), and hostname -f returns FQDN.
@ -116,7 +116,7 @@ var _ = SIGDescribe("Hostname of Pod [Feature:SetHostnameAsFQDN]", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Create Pod with FQDN, setHostnameAsFQDN field set to true.
Description: A Pod that defines the subdomain field in it spec has FQDN. When setHostnameAsFQDN: true, the
hostname is set to be the FQDN. In this case, both commands hostname and hostname -f return the FQDN of the Pod.

View File

@ -53,7 +53,7 @@ var _ = SIGDescribe("Pods Extended", func() {
})
/*
Release : v1.15
Release: v1.15
Testname: Pods, delete grace period
Description: Create a pod, make sure it is running. Using the http client send a 'delete' with gracePeriodSeconds=30. Pod SHOULD get terminated within gracePeriodSeconds and removed from API server within a window.
*/
@ -163,7 +163,7 @@ var _ = SIGDescribe("Pods Extended", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, QOS
Description: Create a Pod with CPU and Memory request and limits. Pod status MUST have QOSClass set to PodQOSGuaranteed.
Behaviors:

View File

@ -173,7 +173,7 @@ var _ = SIGDescribe("PreStop", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Pods, prestop hook
Description: Create a server pod with a rest endpoint '/write' that changes state.Received field. Create a Pod with a pre-stop handle that posts to the /write endpoint on the server Pod. Verify that the Pod with pre-stop hook is running. Delete the Pod with the pre-stop hook. Before the Pod is deleted, pre-stop handler MUST be called when configured. Verify that the Pod is deleted and a call to prestop hook is verified by checking the status received on the server Pod.
*/

View File

@ -20,7 +20,7 @@ import (
"context"
"time"
"k8s.io/api/core/v1"
v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
@ -279,7 +279,7 @@ var _ = SIGDescribe("NoExecuteTaintManager Single Pod [Serial]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Taint, Pod Eviction on taint removal
Description: The Pod with toleration timeout scheduled on a tainted Node MUST not be
evicted if the taint is removed before toleration time ends.
@ -409,7 +409,7 @@ var _ = SIGDescribe("NoExecuteTaintManager Multiple Pods [Serial]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Pod Eviction, Toleration limits
Description: In a multi-pods scenario with tolerationSeconds, the pods MUST be evicted as per
the toleration time limit.

View File

@ -49,7 +49,7 @@ var _ = SIGDescribe("LimitRange", func() {
f := framework.NewDefaultFramework("limitrange")
/*
Release : v1.18
Release: v1.18
Testname: LimitRange, resources
Description: Creating a Limitrange and verifying the creation of Limitrange, updating the Limitrange and validating the Limitrange. Creating Pods with resources and validate the pod resources are applied to the Limitrange
*/

View File

@ -315,7 +315,7 @@ var _ = SIGDescribe("SchedulerPredicates [Serial]", func() {
// 4. Create another pod with no affinity to any node that need 50% of the largest node CPU.
// 5. Make sure this additional pod is not scheduled.
/*
Release : v1.9
Release: v1.9
Testname: Scheduler, resource limits
Description: Scheduling Pods MUST fail if the resource requests exceed Machine capacity.
*/
@ -425,7 +425,7 @@ var _ = SIGDescribe("SchedulerPredicates [Serial]", func() {
// Test Nodes does not have any label, hence it should be impossible to schedule Pod with
// nonempty Selector set.
/*
Release : v1.9
Release: v1.9
Testname: Scheduler, node selector not matching
Description: Create a Pod with a NodeSelector set to a value that does not match a node in the cluster. Since there are no nodes matching the criteria the Pod MUST not be scheduled.
*/
@ -448,7 +448,7 @@ var _ = SIGDescribe("SchedulerPredicates [Serial]", func() {
})
/*
Release : v1.9
Release: v1.9
Testname: Scheduler, node selector matching
Description: Create a label on the node {k: v}. Then create a Pod with a NodeSelector set to {k: v}. Check to see if the Pod is scheduled. When the NodeSelector matches then Pod MUST be scheduled on that node.
*/
@ -652,7 +652,7 @@ var _ = SIGDescribe("SchedulerPredicates [Serial]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Scheduling, HostPort matching and HostIP and Protocol not-matching
Description: Pods with the same HostPort value MUST be able to be scheduled to the same node
if the HostIP or Protocol is different.
@ -685,7 +685,7 @@ var _ = SIGDescribe("SchedulerPredicates [Serial]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Scheduling, HostPort and Protocol match, HostIPs different but one is default HostIP (0.0.0.0)
Description: Pods with the same HostPort and Protocol, but different HostIPs, MUST NOT schedule to the
same node if one of those IPs is the default HostIP of 0.0.0.0, which represents all IPs on the host.

View File

@ -111,7 +111,7 @@ var _ = SIGDescribe("SchedulerPreemption [Serial]", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Scheduler, Basic Preemption
Description: When a higher priority pod is created and no node with enough
resources is found, the scheduler MUST preempt a lower priority pod and
@ -199,7 +199,7 @@ var _ = SIGDescribe("SchedulerPreemption [Serial]", func() {
})
/*
Release : v1.19
Release: v1.19
Testname: Scheduler, Preemption for critical pod
Description: When a critical pod is created and no node with enough
resources is found, the scheduler MUST preempt a lower priority pod to

View File

@ -58,7 +58,7 @@ var _ = utils.SIGDescribe("EmptyDir wrapper volumes", func() {
f := framework.NewDefaultFramework("emptydir-wrapper")
/*
Release : v1.13
Release: v1.13
Testname: EmptyDir Wrapper Volume, Secret and ConfigMap volumes, no conflict
Description: Secret volume and ConfigMap volume is created with data. Pod MUST be able to start with Secret and ConfigMap volumes mounted into the container.
*/
@ -180,7 +180,7 @@ var _ = utils.SIGDescribe("EmptyDir wrapper volumes", func() {
// appears to be less prone to the race problem.
/*
Release : v1.13
Release: v1.13
Testname: EmptyDir Wrapper Volume, ConfigMap volumes, no race
Description: Create 50 ConfigMaps Volumes and 5 replicas of pod with these ConfigMapvolumes mounted. Pod MUST NOT fail waiting for Volumes.
*/

View File

@ -51,7 +51,7 @@ var _ = utils.SIGDescribe("Subpath", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: SubPath: Reading content from a secret volume.
Description: Containers in a pod can read content from a secret mounted volume which was configured with a subpath.
This test is marked LinuxOnly since Windows cannot mount individual files in Containers.
@ -63,7 +63,7 @@ var _ = utils.SIGDescribe("Subpath", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: SubPath: Reading content from a configmap volume.
Description: Containers in a pod can read content from a configmap mounted volume which was configured with a subpath.
This test is marked LinuxOnly since Windows cannot mount individual files in Containers.
@ -75,7 +75,7 @@ var _ = utils.SIGDescribe("Subpath", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: SubPath: Reading content from a configmap volume.
Description: Containers in a pod can read content from a configmap mounted volume which was configured with a subpath and also using a mountpath that is a specific file.
This test is marked LinuxOnly since Windows cannot mount individual files in Containers.
@ -89,7 +89,7 @@ var _ = utils.SIGDescribe("Subpath", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: SubPath: Reading content from a downwardAPI volume.
Description: Containers in a pod can read content from a downwardAPI mounted volume which was configured with a subpath.
This test is marked LinuxOnly since Windows cannot mount individual files in Containers.
@ -105,7 +105,7 @@ var _ = utils.SIGDescribe("Subpath", func() {
})
/*
Release : v1.12
Release: v1.12
Testname: SubPath: Reading content from a projected volume.
Description: Containers in a pod can read content from a projected mounted volume which was configured with a subpath.
This test is marked LinuxOnly since Windows cannot mount individual files in Containers.

View File

@ -62,7 +62,7 @@ var _ = framework.KubeDescribe("MirrorPod", func() {
}, 2*time.Minute, time.Second*4).Should(gomega.BeNil())
})
/*
Release : v1.9
Release: v1.9
Testname: Mirror Pod, update
Description: Updating a static Pod MUST recreate an updated mirror Pod. Create a static pod, verify that a mirror pod is created. Update the static pod by changing the container image, the mirror pod MUST be re-created and updated with the new image.
*/
@ -89,7 +89,7 @@ var _ = framework.KubeDescribe("MirrorPod", func() {
framework.ExpectEqual(pod.Spec.Containers[0].Image, image)
})
/*
Release : v1.9
Release: v1.9
Testname: Mirror Pod, delete
Description: When a mirror-Pod is deleted then the mirror pod MUST be re-created. Create a static pod, verify that a mirror pod is created. Delete the mirror pod, the mirror pod MUST be re-created and running.
*/
@ -109,7 +109,7 @@ var _ = framework.KubeDescribe("MirrorPod", func() {
}, 2*time.Minute, time.Second*4).Should(gomega.BeNil())
})
/*
Release : v1.9
Release: v1.9
Testname: Mirror Pod, force delete
Description: When a mirror-Pod is deleted, forcibly, then the mirror pod MUST be re-created. Create a static pod, verify that a mirror pod is created. Delete the mirror pod with delete wait time set to zero forcing immediate deletion, the mirror pod MUST be re-created and running.
*/

View File

@ -58,7 +58,7 @@ var _ = framework.KubeDescribe("StartupProbe [Serial] [Disruptive]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Pod startup probe restart
Description: A Pod is created with a failing startup probe. The Pod MUST be killed and restarted incrementing restart count to 1, even if liveness would succeed.
*/
@ -87,7 +87,7 @@ var _ = framework.KubeDescribe("StartupProbe [Serial] [Disruptive]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Pod liveness probe delayed (long) by startup probe
Description: A Pod is created with failing liveness and startup probes. Liveness probe MUST NOT fail until startup probe expires.
*/
@ -116,7 +116,7 @@ var _ = framework.KubeDescribe("StartupProbe [Serial] [Disruptive]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Pod liveness probe fails after startup success
Description: A Pod is created with failing liveness probe and delayed startup probe that uses 'exec' command to cat /temp/health file. The Container is started by creating /tmp/startup after 10 seconds, triggering liveness probe to fail. The Pod MUST now be killed and restarted incrementing restart count to 1.
*/
@ -145,7 +145,7 @@ var _ = framework.KubeDescribe("StartupProbe [Serial] [Disruptive]", func() {
})
/*
Release : v1.16
Release: v1.16
Testname: Pod readiness probe, delayed by startup probe
Description: A Pod is created with startup and readiness probes. The Container is started by creating /tmp/startup after 45 seconds, delaying the ready state by this amount of time. This is similar to the "Pod readiness probe, with initial delay" test.
*/