Commit Graph

549 Commits

Author SHA1 Message Date
Maciej Szulik
cb8eabe651
Add simple e2e verifying TimeZone support for CronJob 2022-08-02 16:53:10 +02:00
Stephen Heywood
337bba200c Promote ControllerRevision e2e test to Conformance 2022-07-27 14:47:32 +12:00
Stephen Heywood
6c320b2991 Fix ControllerRevision e2e test 2022-07-11 13:38:24 +12:00
Dave Chen
fd4b5b629b Stop using the deprecated method CurrentGinkgoTestDescription
Besides, the using of method might lead to a `concurrent map writes`
issue per the discussion here: https://github.com/onsi/ginkgo/issues/970

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-08 10:46:11 +08:00
Dave Chen
857458cfa5 update ginkgo from v1 to v2 and gomega to 1.19.0
- update all the import statements
- run hack/pin-dependency.sh to change pinned dependency versions
- run hack/update-vendor.sh to update go.mod files and the vendor directory
- update the method signatures for custom reporters

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-07-08 10:44:46 +08:00
Stephen Heywood
7a9552593b Create ControllerRevision lifecycle e2e test
The test validates the following endpoints

- createAppsV1NamespacedControllerRevision
- deleteAppsV1CollectionNamespacedControllerRevision
- deleteAppsV1NamespacedControllerRevision
- listAppsV1ControllerRevisionForAllNamespaces
- patchAppsV1NamespacedControllerRevision
- readAppsV1NamespacedControllerRevision
- replaceAppsV1NamespacedControllerRevision
2022-06-28 09:34:30 +12:00
Stephen Heywood
18d33db623 Promote e2e job lifecycle test to Conformance 2022-04-19 09:35:27 +12:00
Stephen Heywood
931ad8944d Fix e2e test, assignment to entry in nil map 2022-04-13 15:24:47 +12:00
Aldo Culquicondor
77d9243623 Retry Job update on conflict
Once JobReadyPods is enabled, the Job status might be updated at a later stage after the pods are running.

Change-Id: I4c13c9e55ab7e11b1f9428d6cf0a560a41be1c6a
2022-04-07 09:38:20 -04:00
Kubernetes Prow Robot
8cd689e40d
Merge pull request #109283 from s-urbaniak/ratchet-e2e
test/e2e/framework: use restricted policy by default, default existing tests to privileged
2022-04-05 14:37:25 -07:00
Sergiusz Urbaniak
1495c9f2cd
test/e2e/*: default existing tests to privileged pod security policy
This is to ensure that all existing tests don't break when defaulting
the pod security policy to restricted in the e2e test framework.
2022-04-05 08:41:12 +02:00
Stephen Heywood
c709baa9a0 Promote e2e job status test to Conformance 2022-04-04 13:22:57 +12:00
Sergiusz Urbaniak
373c08e0c7
test/e2e/framework: configure pod security admission level for e2e tests 2022-03-28 15:42:10 +02:00
Stephen Heywood
a1f6b7b7ec Create job lifecycle e2e test
The test validates the following endpoints
- deleteBatchV1CollectionNamespacedJob
- listBatchV1JobForAllNamespaces
- patchBatchV1NamespacedJob
- replaceBatchV1NamespacedJob
2022-03-26 06:58:38 +13:00
Kubernetes Prow Robot
7ae9615760
Merge pull request #108114 from ii/test-job-status
Write Read, Replace, Patch BatchV1NamespacedJobStatus test - +3 endpoint coverage
2022-03-23 22:30:41 -07:00
Kubernetes Prow Robot
f97825e1ce
Merge pull request #107395 from alculquicondor/indexed-job
Graduate IndexedJob to stable
2022-03-23 17:44:41 -07:00
Stephen Heywood
b5edb55bbc Create e2e job status test
e2e test validates the following 3 extra endpoints
- patchBatchV1NamespacedJobStatus
- readBatchV1NamespacedJobStatus
- replaceBatchV1NamespacedJobStatus
2022-03-22 10:26:44 +13:00
David Porter
c70f1955c4
test: Add E2E for job completions with cpu reservation
Create an E2E test that creates a job that spawns a pod that should
succeed. The job reserves a fixed amount of CPU and has a large number
of completions and parallelism. Use to repro github.com/kubernetes/kubernetes/issues/106884

Signed-off-by: David Porter <david@porter.me>
2022-03-16 13:15:03 -04:00
Aldo Culquicondor
2c5d0a273c Graduate IndexedJob to stable
- Lock feature gate to true and schedule for deletion in 1.26
- Remove checks on feature gate
- Graduate E2E test to Conformance

Change-Id: I6814819d318edaed5c86dae4055f4b050a4d39fd
2022-03-15 13:41:06 -04:00
sayaoailun
f2d585e356 It is weird that lastScheduleTime is earlier than creationTime
Signed-off-by: sayaoailun <guojianwei007@126.com>
2022-01-13 14:07:38 +08:00
Kubernetes Prow Robot
2036bf0ba3
Merge pull request #106856 from pmorie/cronjob-e2e-typo
conformance: correct typo for cronjob forbidconcurrent
2022-01-04 11:27:14 -08:00
Ciprian Hacman
574f788711 Skip LB test for IPv6 clusters 2021-12-13 11:43:06 +02:00
Davanum Srinivas
9405e9b55e
Check in OWNERS modified by update-yamlfmt.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-12-09 21:31:26 -05:00
Paul Morie
48a84fe9c7 conformance: correct typo for cronjob forbidconcurrent 2021-12-07 16:55:03 -05:00
Matthew Cary
53b3a6c1d9 controller change for statefulset auto-delete (tests)
Change-Id: I16b50e6853bba65fc89c793d2b9b335581c02407
2021-11-17 16:48:50 -08:00
Claudiu Belu
76d20c5bce tests: Use E2E framework deployments
Deployments can be created easier with the NewDeployment
found in test/e2e/framework/deployment.
2021-10-09 06:11:07 -07:00
Tim Hockin
11a25bfeb6
De-share the Handler struct in core API (#105979)
* De-share the Handler struct in core API

An upcoming PR adds a handler that only applies on one of these paths.
Having fields that don't work seems bad.

This never should have been shared.  Lifecycle hooks are like a "write"
while probes are more like a "read". HTTPGet and TCPSocket don't really
make sense as lifecycle hooks (but I can't take that back). When we add
gRPC, it is EXPLICITLY a health check (defined by gRPC) not an arbitrary
RPC - so a probe makes sense but a hook does not.

In the future I can also see adding lifecycle hooks that don't make
sense as probes.  E.g. 'sleep' is a common lifecycle request. The only
option is `exec`, which requires having a sleep binary in your image.

* Run update scripts
2021-10-29 13:15:11 -07:00
Kubernetes Prow Robot
20ff5381ce
Merge pull request #105507 from claudiubelu/tests/refactor-daemonset
tests: Refactors daemonset utils into framework
2021-10-26 05:01:30 -07:00
Claudiu Belu
b87cc616b5 tests: Refactors daemonset utils into framework
Creates test/e2e/framework/daemonset, which contains commonly
used daemonset-related operations, deduplicating the code for it.
2021-10-21 18:54:38 +03:00
Maciej Szulik
8322121434
Move test-related utils to test/utils 2021-10-12 14:52:19 +02:00
Kubernetes Prow Robot
f83b16d93d
Merge pull request #105052 from leiyiz/skip-storage-test
tag ginkgo tests affected by pdcsi migration for skipping
2021-10-11 13:09:02 -07:00
Léiyì Zhang
822cc33955 tag ginkgo tests affected by pdcsi migration for skipping and add storageclass check for statefulset and upgrade tests 2021-10-09 17:33:56 +00:00
Sahil Vazirani
3988405c8d
GA TTLAfterFinish 2021-10-07 16:58:50 -07:00
atiratree
2cad64db80 add StatefulSet MinReadySeconds e2e test 2021-09-15 13:32:38 +02:00
ravisantoshgudimetla
d0937073dd sts: Promote minReadySeconds 2021-08-20 12:52:59 -04:00
Kubernetes Prow Robot
a535acdc91
Merge pull request #102736 from atiratree/e2e-bump-ProgressDeadlineSeconds
e2e test: bump ProgressDeadlineSeconds in Deployment iterative rollouts
2021-08-11 09:16:46 -07:00
Kubernetes Prow Robot
22d1eff331
Merge pull request #102730 from atiratree/deployment-e2e-pause-fix
e2e test: fix Pause in Deployment iterative rollouts
2021-08-11 06:18:46 -07:00
Kubernetes Prow Robot
dab6f6a43d
Merge pull request #102344 from smarterclayton/keep_pod_worker
Prevent Kubelet from incorrectly interpreting "not yet started" pods as "ready to terminate pods" by unifying responsibility for pod lifecycle into pod worker
2021-07-08 16:48:53 -07:00
Kubernetes Prow Robot
ac6a1b1821
Merge pull request #103414 from ravisantoshgudimetla/fix-pdb-status
[disruptioncontroller] Don't error for unmanaged pods
2021-07-07 12:40:35 -07:00
ravisantoshgudimetla
2c116055f7 [disruptioncontroller] Don't error for unmanaged pods
As of now, we allow PDBs to be applied to pods via
selectors, so there can be unmanaged pods(pods that
don't have backing controllers) but still have PDBs associated.
Such pods are to be logged instead of immediately throwing
a sync error. This ensures disruption controller is
not frequently updating the status subresource and thus
preventing excessive and expensive writes to etcd.
2021-07-07 10:42:24 -04:00
Clayton Coleman
3eadd1a9ea
Keep pod worker running until pod is truly complete
A number of race conditions exist when pods are terminated early in
their lifecycle because components in the kubelet need to know "no
running containers" or "containers can't be started from now on" but
were relying on outdated state.

Only the pod worker knows whether containers are being started for
a given pod, which is required to know when a pod is "terminated"
(no running containers, none coming). Move that responsibility and
podKiller function into the pod workers, and have everything that
was killing the pod go into the UpdatePod loop. Split syncPod into
three phases - setup, terminate containers, and cleanup pod - and
have transitions between those methods be visible to other
components. After this change, to kill a pod you tell the pod worker
to UpdatePod({UpdateType: SyncPodKill, Pod: pod}).

Several places in the kubelet were incorrect about whether they
were handling terminating (should stop running, might have
containers) or terminated (no running containers) pods. The pod worker
exposes methods that allow other loops to know when to set up or tear
down resources based on the state of the pod - these methods remove
the possibility of race conditions by ensuring a single component is
responsible for knowing each pod's allowed state and other components
simply delegate to checking whether they are in the window by UID.

Removing containers now no longer blocks final pod deletion in the
API server and are handled as background cleanup. Node shutdown
no longer marks pods as failed as they can be restarted in the
next step.

See https://docs.google.com/document/d/1Pic5TPntdJnYfIpBeZndDelM-AbS4FN9H2GTLFhoJ04/edit# for details
2021-07-06 15:55:22 -04:00
Kubernetes Prow Robot
9ca75c1f49
Merge pull request #103243 from ii/promote-statefulset-status-test
Promote to Conformance StatefulSet Patch, Read and Replace Status test +3
2021-07-01 14:28:02 -07:00
Kubernetes Prow Robot
3334703eb2
Merge pull request #103242 from ii/promote-deployment-status-test
Promote to Conformance Patch, Read and Replace DeploymentStatus test +1
2021-07-01 13:18:04 -07:00
Stephen Heywood
1b73a0040a Promote Stateful Status e2e test to Conformance 2021-06-28 11:24:59 +12:00
Stephen Heywood
405e9a5172 Promote Deployment Status e2e test to Conformance 2021-06-28 11:04:30 +12:00
Stephen Heywood
d3ad1d77f3 Promote Statefulset list and deleteCollection e2e test to Conformance 2021-06-28 10:06:27 +12:00
Kubernetes Prow Robot
b132b69700
Merge pull request #103073 from ravisantoshgudimetla/add-e2e-minReadySeconds
StatefulSet minReadySeconds e2e
2021-06-25 12:12:59 -07:00
ravisantoshgudimetla
cf9510751d StatefulSet minReadySeconds e2e 2021-06-23 08:23:23 -04:00
Kubernetes Prow Robot
268cab5f44
Merge pull request #102022 from adtac/sbeta
graduate SuspendJob to beta
2021-06-22 17:18:10 -07:00
Stephen Heywood
3c59e742f3 Create List, Patch & DeleteCollection StatefulSet Test
Co-Authored-By: Riaan Kleinhans <riaan@ii.coop>

e2e test validates the following 3 extra endpoints

- patchAppsV1NamespacedStatefulSet
- listAppsV1StatefulSetForAllNamespaces
- deleteAppsV1CollectionNamespacedStatefulSet
2021-06-17 09:21:38 +12:00