Commit Graph

19907 Commits

Author SHA1 Message Date
David Eads
649b87aaf8 prevent mutation of deletion options during delete collection 2021-07-08 15:36:10 -04:00
Aldo Culquicondor
2dd2622188 Track Job Pods completion in status
Through Job.status.uncountedPodUIDs and a Pod finalizer

An annotation marks if a job should be tracked with new behavior

A separate work queue is used to remove finalizers from orphan pods.

Change-Id: I1862e930257a9d1f7f1b2b0a526ed15bc8c248ad
2021-07-08 17:48:05 +00:00
Kubernetes Prow Robot
1edf50192e
Merge pull request #103536 from mengjiao-liu/clean-master-term-test
Clean up the remaining master names in test/integration
2021-07-08 03:05:05 -07:00
Shiming Zhang
5d80665b0a Fix dbus config path for GracefulNodeShutdown e2e 2021-07-08 10:41:44 +08:00
Wei Huang
fb9cafc99b
sched: provide an option for plugin developers to move pods to activeQ 2021-07-07 12:50:12 -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
Kubernetes Prow Robot
ac554af79b
Merge pull request #103142 from serathius/etcd-3.5.0
Upgrade etcd to 3.5.0
2021-07-07 12:40:22 -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
Kubernetes Prow Robot
b289fbb03d
Merge pull request #103409 from andrewsykim/service-internal-traffic-policy-e2e
test/e2e/network: add test for Service internalTrafficPolicy
2021-07-07 06:18:43 -07:00
Mengjiao Liu
96406b915d Clean up the remaining master names in test/integration 2021-07-07 15:39:59 +08:00
Kubernetes Prow Robot
e1acbbd8fd
Merge pull request #99961 from margocrawf/master
Introduce Impersonate-UID header
2021-07-06 18:46:43 -07: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
cbba6e41cc
Merge pull request #103472 from andrewsykim/deflake-quota-service-test
test/integration/quota: deflake TestQuotaLimitService
2021-07-06 12:08:19 -07:00
Kubernetes Prow Robot
3392f16908
Merge pull request #102890 from ankeesler/exec-plugin-v1
exec credential provider: add v1 struct
2021-07-06 10:42:31 -07:00
Margo Crawford
74f5ed6b17 This introduces an Impersonate-Uid header to server side code.
UserInfo contains a uid field alongside groups, username and extra.
This change makes it possible to pass a UID through as an impersonation header like you
can with Impersonate-Group, Impersonate-User and Impersonate-Extra.

This PR contains:

* Changes to impersonation.go to parse the Impersonate-Uid header and authorize uid impersonation
* Unit tests for allowed and disallowed impersonation cases
* An integration test that creates a CertificateSigningRequest using impersonation,
  and ensures that the API server populates the correct impersonated spec.uid upon creation.
2021-07-06 10:13:16 -07:00
Kubernetes Prow Robot
dd8ba30877
Merge pull request #103509 from sanposhiho/test/integration/util/fix-typo
Fix(test/integration/util): fix typo on logging message
2021-07-06 09:34:55 -07:00
Kubernetes Prow Robot
907e2c4d46
Merge pull request #103294 from mengjiao-liu/rename-master-package
test/integration: rename package and files name from master to controlplane
2021-07-06 09:34:19 -07:00
Andrew Keesler
20e1c4d754
exec credential provider: update tests+metadata for v1
Signed-off-by: Andrew Keesler <akeesler@vmware.com>
2021-07-06 09:48:35 -04:00
Andrew Sy Kim
04d59ff2df test/e2e/network: add Service internalTrafficPolicy test for pod (w/ host network) -> pod (w/ host network)
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 09:22:07 -04:00
Andrew Sy Kim
9977ea371b test/e2e/network: add Service internalTrafficPolicy test for pod -> pod (w/ host network)
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 09:22:06 -04:00
Andrew Sy Kim
025c95a778 test/e2e/network: add Service internalTrafficPolicy test pod (w/ host network) -> pod
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 09:22:06 -04:00
Andrew Sy Kim
f6bc5d0140 test/e2e/network: add Service internalTrafficPolicy test pod to pod
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 09:22:06 -04:00
Andrew Sy Kim
edbaf9d5d3 test/integration/quota: poll for ResourceQuota used status in TestQuotaLimitService
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
Co-authored-by: Antonio Ojea <aojea@redhat.com>
2021-07-06 07:10:20 -04:00
Andrew Sy Kim
caf42fde43 test/integration/quota: refactor Service forbidden check into helper function
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 06:39:26 -04:00
Andrew Sy Kim
54bc1babe1 test/integration/quota: update TestQuotaLimitService to explicitly check for Forbidden status when quota limit is exceeded
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 06:39:26 -04:00
Andrew Sy Kim
87cef2ca73 test/integration/quota: deflake TestQuotaLimitService by collapsing test
cases and adding a short delay for resource quota to propagate

Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2021-07-06 06:39:26 -04:00
Kensei Nakada
a85f3e4cce
Fix(test/integration/util): fix typo on logging message 2021-07-06 17:08:11 +09:00
Sascha Grunert
2d0f99fba1
Fix resource metrics e2e test
Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2021-07-05 11:16:05 +02:00
Kubernetes Prow Robot
cbe3ef473e
Merge pull request #100412 from hanlins/lb-node-ports-beta
Lb node ports beta
2021-07-02 16:08:10 -07:00
Hanlin Shi
c96c809539 Add integration test for LB node port control
Signed-off-by: Hanlin Shi <shihanlin9@gmail.com>
2021-07-02 21:58:49 +00:00
Hanlin Shi
24592ca989 Update the related tests
1. add AllocateLoadBalancerNodePorts fields in specs for validation test cases
2. update fuzzer
3. in resource quota e2e, allocate node port for loadbalancer type service and
   exceed the node port quota

Signed-off-by: Hanlin Shi <shihanlin9@gmail.com>
2021-07-02 21:58:41 +00:00
Kubernetes Prow Robot
d1833880a7
Merge pull request #103083 from vivian-xu/use-native-errors
Update github.com/pkg/errors with go native errors pkg
2021-07-02 13:38:38 -07:00
Kubernetes Prow Robot
0bb6d1431c
Merge pull request #103371 from claudiubelu/tests/windows-flakyness
windows tests: Wait for the network connectivity first
2021-07-02 12:30:22 -07:00
Kubernetes Prow Robot
a331cf74b7
Merge pull request #102050 from pohly/fix/deflake-metrics-proxy
remove metrics proxy
2021-07-02 12:30:10 -07:00
Matthias Bertschy
b1f34ea205 add RetryOnConflict to pod status updates 2021-07-02 12:38:53 +02:00
Kubernetes Prow Robot
defcc916ed
Merge pull request #103382 from liggitt/podsecurity-hostprocess
[PodSecurity] hostProcess baseline check
2021-07-02 01:16:24 -07:00
Kubernetes Prow Robot
659c7e709f
Merge pull request #99494 from enj/enj/i/not_after_ttl_hint
csr: add expirationSeconds field to control cert lifetime
2021-07-01 23:02:12 -07:00
Monis Khan
8d49502fcd
csr: update e2e conformance test with expirationSeconds usage
Signed-off-by: Monis Khan <mok@vmware.com>
2021-07-01 23:38:16 -04:00
Monis Khan
cd91e59f7c
csr: add expirationSeconds field to control cert lifetime
This change updates the CSR API to add a new, optional field called
expirationSeconds.  This field is a request to the signer for the
maximum duration the client wishes the cert to have.  The signer is
free to ignore this request based on its own internal policy.  The
signers built-in to KCM will honor this field if it is not set to a
value greater than --cluster-signing-duration.  The minimum allowed
value for this field is 600 seconds (ten minutes).

This change will help enforce safer durations for certificates in
the Kube ecosystem and will help related projects such as
cert-manager with their migration to the Kube CSR API.

Future enhancements may update the Kubelet to take advantage of this
field when it is configured in a way that can tolerate shorter
certificate lifespans with regular rotation.

Signed-off-by: Monis Khan <mok@vmware.com>
2021-07-01 23:38:15 -04:00
Kubernetes Prow Robot
62503f254e
Merge pull request #103413 from mgutierrez98/refactor-whitelist-blacklist
Refactored files containing whitelist/blacklist to allowlist/denylist…
2021-07-01 18:12:25 -07: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
062bc359ca
Merge pull request #102444 from sanwishe/resourceStartTime
Expose container start time in kubelet /metrics/resource endpoint
2021-07-01 14:27:51 -07:00
mgutierrez98
1cfbb0aa25 remove webhook.go to revert changes to conformance test 2021-07-01 20:24:46 +00: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
Kubernetes Prow Robot
cd94e840cb
Merge pull request #103241 from ii/promote-statefulset-list-deletecollection
Promote to Conformance StatefulSet List, Patch & DeleteCollection Test +3
2021-07-01 13:17:52 -07:00
Jordan Liggitt
49d31c45b1 PodSecurity: baseline hostProcess check 2021-07-01 15:49:33 -04:00
Kubernetes Prow Robot
1861e4756d
Merge pull request #103396 from praveenghuge/master-to-main-cleanup
k8s.io master to main cleanup
2021-07-01 04:45:54 -07:00
Kubernetes Prow Robot
a0c83ba938
Merge pull request #103385 from ravisantoshgudimetla/fix-ubernetes-tests-2
[storage] [test] Ensure proper resource creation
2021-07-01 00:06:06 -07:00
Kubernetes Prow Robot
dbfea1e2aa
Merge pull request #103365 from liggitt/podsecurity-feature-test
PodSecurity: make failure integration tests feature-aware
2021-07-01 00:05:54 -07:00
Praveen Ghuge
db3534dd64 master too main cleanup 2021-06-30 21:56:29 -07:00
Kubernetes Prow Robot
ea0098b811
Merge pull request #103219 from mgutierrez98/refactor-wait_go
Renamed variable within wait_test containing master to control plane
2021-06-30 20:59:54 -07:00
Jordan Liggitt
ba6b4c5a18 PodSecurity: test GA-only cases and alpha/beta fields separately 2021-06-30 22:08:11 -04:00
Kubernetes Prow Robot
642f42d62b
Merge pull request #103364 from aramase/check-privileged
[PodSecurity] Add privileged containers baseline check
2021-06-30 16:11:48 -07:00
ravisantoshgudimetla
67bc23411b [storage] [test] Ensure proper resource creation
Ensure resources are created in zone with schedulable
nodes. For example, if we have 4 zones with 3 zones
having worker nodes and 1 zone having master nodes(unscheduable
for workloads), we should not create resources like PV, PVC or
pods in that zone.
2021-06-30 18:01:57 -04:00
Anish Ramasekar
5bd3334ad6
[PodSecurity] Add privileged containers baseline check
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2021-06-30 16:39:28 -04:00
Kubernetes Prow Robot
9c360b6185
Merge pull request #103361 from m14815/commit-21.6.2
Error string should not be capitalized or end with punctuation.
2021-06-30 11:50:17 -07:00
Kubernetes Prow Robot
044fd6fdf6
Merge pull request #99829 from palnabarun/migrate-to-go-embed
Replace go-bindata with //go:embed
2021-06-30 10:37:03 -07:00
maruiyan
9c150b0f22 Error string should not be capitalized or end with punctuation. 2021-06-30 23:23:30 +08:00
Kubernetes Prow Robot
7ad7c0757a
Merge pull request #103160 from ravisantoshgudimetla/fix-ubernetes-tests
Run ubernetes tests on gke only
2021-06-29 18:29:14 -07:00
Kubernetes Prow Robot
c9bff73105
Merge pull request #103179 from tanjing2020/runtimeclass
[e2e] Destroy the created runtimeclass resources at the end of the test case.
2021-06-29 17:07:15 -07:00
Kubernetes Prow Robot
f2e47502fd
Merge pull request #103076 from wzshiming/fix/flake-gracefulnodeshutdown-dbus
Fix the GracefulNodeShutdown e2e test running on dbus that refuses to manually start
2021-06-29 11:19:50 -07:00
Nabarun Pal
ac41e56582
docs: add documentation on adding files to the embedded data
Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2021-06-29 23:30:50 +05:30
ravisantoshgudimetla
c65b80a637 [storage] [test] Remove extra zone test
We're running ubernetes tests
`should only be allowed to provision PDs in zones
where nodes exist`
on gcp&gke. While the test is useful in exercising
the scenario of identifying extra zone and
creating a node in it, not every Kube
distribution uses the same approach to create a node,
further if even there is an extra zone, we cannot
guarantee the zone to have enough quota. There can also
be other GCP specific edge cases all of which cannot be
covered within this test. So, removing the test
as agreed upon with the storage team
2021-06-29 12:52:58 -04:00
Kubernetes Prow Robot
756203fda0
Merge pull request #102576 from dobsonj/101911
kubelet: do not call RemoveAll on volumes directory for orphaned pods
2021-06-29 06:54:40 -07:00
Nabarun Pal
bbccf2ecb4
e2e-node: move to embedded test manifests
Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2021-06-29 19:16:49 +05:30
Nabarun Pal
d98b2dd2d6
generated: remove usage of go-bindata
Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2021-06-29 19:16:48 +05:30
Nabarun Pal
68b334d02b
test: setup embedded file sources for manifests
Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2021-06-29 19:16:46 +05:30
Kubernetes Prow Robot
3d87fd6a9a
Merge pull request #103273 from XudongLiuHarold/fix-loadbalancerclass-test-name
fix loadbalancerclass integration test funcation name
2021-06-29 05:40:41 -07:00
vivian-xu
ceb42d0938 Update github.com/pkg/errors with go native errors pkg 2021-06-29 17:39:49 +08:00
Kubernetes Prow Robot
ebcb4a2d88
Merge pull request #103104 from pacoxu/npd-088
update npd to v0.8.8
2021-06-29 02:30:40 -07:00
Mengjiao Liu
8e4212c01a test/integration: rename package and files name from master to controlplane in test/integration 2021-06-29 17:21:29 +08:00
Nabarun Pal
3af6329caf
e2e-framework: add an EmbeddedFileSource to sources
The data structure would wrap an embedded filesystem andthe root
directory relative to which the embedded filesystem is constructed.

Signed-off-by: Nabarun Pal <pal.nabarun95@gmail.com>
2021-06-29 13:36:29 +05:30
Francesco Romani
c69ad8c57a e2e: increase readiness gate timeout
We're trying to fix https://github.com/kubernetes/kubernetes/issues/75355
sicne long time, and we believe the current timeout could
actually be too low (despite being "forever", which is 30s).

To validate this theory, we set the timeout to one full minute.

Also, make the logging more verbose to make the troubleshooting easier.

Signed-off-by: Francesco Romani <fromani@redhat.com>
2021-06-29 09:01:31 +02:00
Kubernetes Prow Robot
d92f6c424d
Merge pull request #103099 from liggitt/podsecurity
PodSecurity admission
2021-06-28 20:46:52 -07:00
Harold
477aef192f fix loadbalancerclass integration test funcation name 2021-06-28 20:07:02 -07:00
Kubernetes Prow Robot
9866f9364e
Merge pull request #103112 from fromanirh/cpumanager-e2e-fixes
e2e: node: remove obsolete AlphaFeature tag
2021-06-28 19:36:39 -07:00
pacoxu
ffdf3f5007 update node-problem-detector npd to v0.8.8
Signed-off-by: pacoxu <paco.xu@daocloud.io>
Co-Authored-By: vteratipally <vteratipally@users.noreply.github.com>
2021-06-29 09:35:32 +08:00
tanjing2020
f80f9eeb6d Destroy the created runtimeclass resources at the end of the test case. 2021-06-29 09:20:40 +08:00
Kubernetes Prow Robot
ee459b8969
Merge pull request #103265 from fromanirh/e2e-node-fix-npd
e2e: node: fix npd test failures bumping image
2021-06-28 17:03:50 -07:00
Kubernetes Prow Robot
38f012320f
Merge pull request #101947 from cynepco3hahue/memory_manager_move_to_beta
memory manager: move to beta
2021-06-28 15:38:28 -07:00
Jordan Liggitt
42dc070b47 PodSecurity: kube-apiserver integration test 2021-06-28 17:45:36 -04:00
Francesco Romani
889dcb5b54 e2e: node: fix npd test failures bumping image
The PR https://github.com/kubernetes/kubernetes/pull/100041 updated
node-problem-detector to v0.8.7, but unfortunately we didn't update
also the image using in the e2e_node tests.

As result, the tests were failing like

E2eNode Suite: [sig-node] NodeProblemDetector [NodeFeature:NodeProblemDetector] [Serial] SystemLogMonitor should generate node condition and events for corresponding errors
_output/local/go/src/k8s.io/kubernetes/test/e2e_node/node_problem_detector_linux.go:301
Timed out after 60.000s.
Expected success, but got an error:
    <*errors.errorString | 0xc0011f2600>: {
        s: "expected total number of events was 4, actual events counted was 7\nEvents

This in turn was one of the contributing factors in making the
pull-kubernetes-node-kubelet-serial lane constantly failing.

This patch updates the image used in the tests, fixing the failure.

Signed-off-by: Francesco Romani <fromani@redhat.com>
2021-06-28 16:32:12 +02: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
Rajas Kakodkar
266ffa8526 bug fix in sctp test 2021-06-27 21:53:41 +05:30
Kubernetes Prow Robot
e974bcd471
Merge pull request #103235 from thejoycekung/debian-setcap-image-bump
Update debian, debian-iptables, setcap images to pick up CVE fixes
2021-06-26 16:21:23 -07:00
Ciprian Hacman
1721be087d nodeport tests: node addresses must match the service IP family 2021-06-26 10:00:46 +03:00
Joyce Kung
0a8a9188c9 Update debian-iptables image to buster-v1.6.5 2021-06-25 20:45:20 -04:00
mgutierrez98
70124846fa control plane typo in node role path 2021-06-26 00:33:32 +00:00
Antonio Ojea
2eb50ee2fd fix comment on dual-stack integration test 2021-06-25 23:24:49 +02:00
mgutierrez98
80171465b3 Renamed variable containing master to control plane 2021-06-25 21:20:29 +00:00
Kubernetes Prow Robot
017b359770
Merge pull request #103180 from aojea/collect_ipfamily
Services tests for NodePorts must match the Node Address and Service IP family
2021-06-25 12:13:32 -07:00
Kubernetes Prow Robot
d47448cc85
Merge pull request #103114 from learner0810/fix/remove-errors-pkg
update to remove github.com/pkg/errors
2021-06-25 12:13:11 -07: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
Kubernetes Prow Robot
e19dc07ac5
Merge pull request #102898 from khenidak/fix-prefer-dualstack
fix auto upgraded preferDual-Stack services (in cluster upgrade)
2021-06-25 10:58:08 -07:00
Kubernetes Prow Robot
9254610765
Merge pull request #103129 from XudongLiuHarold/service-loadbalancer-class-e2e
Promote loadbalancerclass feature to beta
2021-06-25 09:48:57 -07:00
Antonio Ojea
916dbc335c nodeport tests: node addresses must match the service IP family 2021-06-25 10:34:42 +02:00
Antonio Ojea
02a3caba9c refactor default IP family cluster detection 2021-06-25 10:34:42 +02:00
Claudiu Belu
9accb994df tests: Wait for the network connectivity first
Some tests are checking the network connectivity using gomega.Consistently,
which will fail if any of the checks fails. This could lead to flakyness in
some scenarios in which kube-proxy was supposed to apply Policies for
Kubernetes services.

We can instead wait for the network connectivity to work first using gomega.Eventually,
after which we can check the consistency.
2021-06-25 00:56:37 -07:00