Commit Graph

2781 Commits

Author SHA1 Message Date
Adhityaa Chandrasekar
71bc9ce9c2 scheduler_perf: refactor to allow arbitrary workloads
Signed-off-by: Adhityaa Chandrasekar <adtac@google.com>
2020-09-17 19:22:20 +00:00
Kubernetes Prow Robot
09b3f6dbb3
Merge pull request #93214 from trashhalo/prefer-error
test: prefer NoError/Error over Nil/NotNil
2020-09-16 15:10:45 -07:00
Kubernetes Prow Robot
e7b9453972
Merge pull request #93537 from timuthy/enhancement.move-resourcequota
Move ResourceQuota admission to k8s.io/apiserver lib
2020-09-15 12:26:58 -07:00
Kubernetes Prow Robot
396dd2555d
Merge pull request #91993 from nodo/89274-change-of-managefields-via-subresources
Do not allow manual changes to manageFields via subresources
2020-09-15 12:26:43 -07:00
wojtekt
af61e8fbdf Test watchcache being updated in multietcd setup 2020-09-15 08:19:13 +02:00
David Eads
c0c033b12f generated 2020-09-14 09:24:41 -04:00
David Eads
c7911a384c remove pod presets 2020-09-14 09:24:40 -04:00
Lee Verberne
bf0a33d1de Use EphemeralContainers for storage validation
When updating ephemeral containers, convert Pod to EphemeralContainers
in storage validation. This resolves a bug where admission webhook
validation fails for ephemeral container updates because the webhook
client cannot perform the conversion.

Also enable the EphemeralContainers feature gate for the admission
control integration test, which would have caught this bug.
2020-09-10 17:24:52 +02:00
Haowei Cai
07506ab384 generated 2020-09-08 19:14:36 -07:00
Chao Xu
86dd4ce3b5 Let kube-apiserver host the storage version API
Co-authored-by: Haowei Cai <haoweic@google.com>
2020-09-08 19:14:36 -07:00
Wei Huang
d8def59871
Initialize scheduler's podInformer in sharedInformerFactory
Scheduler's specific podInfomer is now initialized inside the sahredInformerFactory.
2020-09-08 12:57:17 -07:00
Kubernetes Prow Robot
1f708f6e62
Merge pull request #94112 from damemi/sort-endpoints
Remove canonicalization of endpoints by endpoints controller for better comparison
2020-09-04 22:13:40 -07:00
Stephen Solka
203679cc61 prefer NoError/Error over Nil/NotNil 2020-09-04 18:35:52 -04:00
Tim Usner
70d440bc7e Move ResourceQuota admission to k8s.io/apiserver 2020-09-04 14:53:52 +02:00
Antonio Ojea
0004b199d5 do not mutate endpoints in the apiserver
the endpoints API handler was using the Canonicalize() method to
reorder the endpoints, however, due to differences with the
endpoint controller RepackSubsets(), the controller was considering
the endpoints different despite they were not, generating unnecessary
updates evert resync period.
2020-09-04 08:42:45 -04:00
Kubernetes Prow Robot
f736be5721
Merge pull request #94397 from wojtek-t/stop_setting_selflink
Stop setting SelfLink in kube-apiserver.
2020-09-03 12:31:55 -07:00
Kubernetes Prow Robot
0455c2d5e7
Merge pull request #94407 from lavalamp/big-rename
Control Plane is a better name
2020-09-02 14:49:55 -07:00
Kubernetes Prow Robot
17efe1d627
Merge pull request #93394 from liggitt/shorten-apimachinery-test
Shorten watch restart test, run in parallel
2020-09-02 12:09:06 -07:00
Daniel Smith
a86afc12df update scripts 2020-09-02 10:49:40 -07:00
Daniel Smith
15e0e3e90e rename 2020-09-02 10:48:26 -07:00
Kubernetes Prow Robot
dd6c53d035
Merge pull request #93946 from alexzimmer96/68026-pkg-controller-resourcequota
Refactor pkg/controllers/resourcequota to fix golint errors
2020-09-01 19:41:06 -07:00
wojtekt
2539912a22 Stop setting SelfLink in kube-apiserver. 2020-09-01 20:57:38 +02:00
Kubernetes Prow Robot
044f9102dd
Merge pull request #94054 from vareti/shorten-test-run-time
start kube-apiserver and webhook server only once to shorten the webhook audit test time
2020-08-29 07:11:19 -07:00
Siva
f3ede26e20 start kube-apiserver and webhook server only once to shorten the webhook audit test time 2020-08-28 11:31:46 -05:00
Kubernetes Prow Robot
d9789c4fa3
Merge pull request #93587 from liggitt/daemonset-test-name
Clean up daemonset test names
2020-08-28 06:37:40 -07:00
Kubernetes Prow Robot
936fadb56a
Merge pull request #93380 from yue9944882/apf-int-test-reject
Integration: Ensure no rejections in PL isolation test
2020-08-28 06:37:02 -07:00
Kubernetes Prow Robot
0eeb676468
Merge pull request #93162 from julianvmodesto/before-first-apply-test
Add tests for stopped managed fields tracking
2020-08-28 06:35:35 -07:00
Kubernetes Prow Robot
c143ea4bbf
Merge pull request #90522 from beautytiger/fix/nilranger
cleanup: no need nil check before range
2020-08-27 17:54:31 -07:00
Kubernetes Prow Robot
54d7adc1f5
Merge pull request #93982 from jayunit100/wait_func_cleanup
wait function and util comments and cleanup
2020-08-27 04:49:07 -07:00
Kubernetes Prow Robot
343596b4d9
Merge pull request #92920 from gaurav1086/TestWatchBasedManager_fix_deadlock
[test/kubelet]: Fix deadlock in watch manager test
2020-08-26 20:51:04 -07:00
Rob Scott
3c804502d7
Updating EndpointSliceMirroring controller to listen for Service changes
This fixes a bug that could occur if a custom Endpoints resource was
created before a Service was created.
2020-08-24 17:09:42 -07:00
Alexander Zimmermann
86dc0364f4
Refactored pkg/controllers/resourcequota
* Fixed golint issues
* Removed redundant package import names
* Improved some variables and names

Co-authored-by: Mike Danese <mikedanese@gmail.com>
2020-08-20 14:37:27 +02:00
jay vyas
04b38e9f91 Update wait function w/ descriptions of global node states, TODO for kubelet
API.
2020-08-19 13:55:54 -04:00
Rob Scott
43ce0c53cc
Fixing a flaky EndpointSliceMirroring integration test
This test was trying to create an Endpoints resource that the Endpoints
controller would also attempt to create. This could result in a failure
if the Endpoints controller created the resource before the test did.
2020-08-18 12:52:54 -07:00
Andrea Nodari
c522ee08a3 Do not allow manual changes to manageFields via subresources
If a request tries to change managedFields, the response returns the
managedField of the live object.
2020-08-18 13:33:39 +02:00
Kubernetes Prow Robot
b7d59d37fa
Merge pull request #93721 from gitlawr/speedup-reconciler-tests
Speed up master reconciler tests
2020-08-17 08:38:18 -07:00
gitlawr
11b347ca1d Speed up master reconciler tests
Start apiservers in parallel.
Reduce the number of masters.
Reduce the time for ReconcilerMasterLease.* tests from ~85s to ~41s on
average.
2020-08-17 22:28:30 +08:00
Kubernetes Prow Robot
3647766cbc
Merge pull request #93938 from alculquicondor/revert-node-delete
Keep track of remaining pods when a node is deleted
2020-08-13 13:25:41 -07:00
Aldo Culquicondor
16d7ecfa45 Remove direct accesses to cache's node map
Signed-off-by: Aldo Culquicondor <acondor@google.com>
Change-Id: Iebb22fc816926aaa1ddd1e4b2e52f335a275ffaa
Signed-off-by: Aldo Culquicondor <acondor@google.com>
2020-08-13 14:22:06 -04:00
Kubernetes Prow Robot
fa76242bba
Merge pull request #93730 from adtac/MixedSchedulingBasePod
scheduler_perf/MixedSchedulingBasePod: label nodes for pod affinity
2020-08-12 19:14:14 -07:00
Adhityaa Chandrasekar
59a6e86c0c scheduler_perf: label nodes for pod affinity
3 commits:
  label nodes for pod affinity
  use topology.kubernetes.io/zone label
  use 3 zones in pod affinity rules
2020-08-10 16:07:46 +00:00
Kubernetes Prow Robot
7740b8124c
Merge pull request #93555 from cofyc/fix81368
integration: Wait for PV to be available in TestVolumeProvision
2020-08-09 22:30:20 -07:00
Julian V. Modesto
f2deb2417a Add tests for managed fields tracking.
- Test that client-side apply users don't encounter a conflict with
server-side apply for objects that previously didn't track managedFields
- Test that we stop tracking managed fields with `managedFields: []`
- Test that we stop tracking managed fields when the feature is disabled
2020-08-05 18:22:44 -04:00
Shingo Omura
d0421fa9c3
Fix TestScorePlugin: numScore should be accessed with atomic.LoadInt32 2020-08-04 22:50:13 +09:00
Shingo Omura
ef1fab7642
expose Run[Pre]ScorePlugins functions in PluginRunner interface 2020-08-04 22:50:13 +09:00
Wei Huang
b6b7ab3f73
Deflake scheduler PostBind integration test 2020-08-03 12:30:22 -07:00
Jordan Liggitt
2cea9c5d51 Clean up daemonset test names 2020-07-30 17:33:38 -04:00
Kubernetes Prow Robot
9af4ad5c45
Merge pull request #93550 from Huang-Wei/refix-postfilter-flake
Deflake scheduler PostFilter and Filter integration test
2020-07-30 04:30:31 -07:00
Yecheng Fu
930409c993 integration: Wait for PV to be available 2020-07-30 13:37:20 +08:00
Wei Huang
539272cb73
Deflake scheduler PostFilter and Filter integration test
- Revert "Fix integration test flake on TestFilter and TestPostFilter"
  This reverts commit 94fc18c2dc.
- Relax checking logic on expected Filter/PostFilter counters.
2020-07-29 18:37:47 -07:00
Wei Huang
0e71facefe
Hold Pod in cache until all other cleanup work is completed
- Move "ForgetPod" after "RunReservePluginsUnreserve", so that the cache would hold the pod to
  avoid it's being retried simutaneously until Unreserve is completed.
- Move "assume" ahead of "RunReservePluginsReserve". This is based on the fact that "ForgetPod" is
  the last step of failure path, so "assume" should be reversly treated as the first step. The
  current failure path is like this:
  assume -> reserve -> unreserve -> forgetPod -> recordingFailure
- Make subtests of TestReservePluginUnreserve stateless
2020-07-29 11:27:19 -07:00
Wei Huang
94fc18c2dc
Fix integration test flake on TestFilter and TestPostFilter 2020-07-28 20:51:01 -07:00
Wei Huang
862fdaaf79
Fix an integration test flake on NodeAfffinity ScorePlugin 2020-07-28 08:57:02 -07:00
Kubernetes Prow Robot
8d74486a6a
Merge pull request #93497 from robscott/endpointslicemirroring-integration-fix
Increasing allowed delay for EndpointSlice mirroring integration tests
2020-07-28 04:13:08 -07:00
Rob Scott
eb196be139
Increasing allowed delay for EndpointSlice mirroring integration tests.
The shorter 5s delay had become a source of flakes.
2020-07-27 21:43:15 -07:00
Wei Huang
8936f9e4bf
Fix integration test flake on TestScorePlugin 2020-07-27 18:13:38 -07:00
yue9944882
40f3242cd9 apf integration test: ensure no rejection 2020-07-27 10:42:37 +08:00
Jordan Liggitt
f33dc28094 generated: hack/update-hack-tools.sh && hack/update-vendor.sh 2020-07-25 16:45:02 -04:00
Jordan Liggitt
c778008420 Shorten watch restart test, run in parallel 2020-07-23 17:17:29 -04:00
Jordan Liggitt
8f9be8af13 Stabilize integration test names 2020-07-22 11:58:54 -04:00
hasheddan
a70b78e49a
Skip failing scheduler integration tests until they can be run successfully
The IPAM and scheduler performance tests are currently causing
integration-master job to fail because of timeouts. They were not
previously running as part of integration-master, so we can disable them
without loss of test coverage. They should be re-enabled as part of fix
for #93112.

Signed-off-by: hasheddan <georgedanielmangum@gmail.com>
2020-07-15 10:28:35 -05:00
Kubernetes Prow Robot
6079cebfae
Merge pull request #90187 from julianvmodesto/last-applied-updater
Implement server-side apply upgrade and downgrade
2020-07-13 16:45:20 -07:00
Gaurav Singh
22dc4744a0 [test/kubelet]: Fix deadlock in watch manager test
Signed-off-by: Gaurav Singh <gaurav1086@gmail.com>
2020-07-12 10:56:28 -04:00
Kubernetes Prow Robot
888255bf3a
Merge pull request #92879 from liggitt/short-integration-tests
Skip expensive integration tests in short run mode
2020-07-11 20:57:52 -07:00
Kubernetes Prow Robot
49dced762d
Merge pull request #92661 from jpbetz/smd-bump-field-unsetting
Bump to SMD PR#166 to pick up unsetting field changes and add integration tests
2020-07-10 15:41:05 -07:00
Kubernetes Prow Robot
4efed03276
Merge pull request #91637 from robscott/endpointslice-mirroring
Adding new EndpointSlice Mirroring Controller
2020-07-10 10:19:48 -07:00
Joe Betz
3c2842fbc6 Add ownership transfer test 2020-07-09 06:18:59 -07:00
Joe Betz
ec136db9ce Add server side apply unsetting field tests 2020-07-09 06:18:58 -07:00
Kubernetes Prow Robot
94a08e159a
Merge pull request #92387 from pohly/csi-storage-capacity
CSI storage capacity check
2020-07-09 00:04:59 -07:00
Julian V. Modesto
e4368eb67e Implement server-side apply upgrade & downgrade.
- Allow client-side to server-side apply upgrade.

  Ensure that a user can change management of an object from client-side apply to
  server-side apply without conflicts.

- Allow server-side apply to client-side downgrade.

  For an object managed with client-side apply, a user may upgrade to
  managing the object with server-side apply, then decide to downgrade.

  We can support this downgrade by keeping the last-applied-configuration
  annotation for client-side apply updated with server-side apply.
2020-07-08 19:14:03 -04:00
Wei Huang
d65a97848e
codegen 2020-07-08 09:58:42 -07:00
Wei Huang
4b26ef2217
Remove DisablePreemption field from SchedulerConfig v1beta1
DisablePreemption field can be removed as it can be deduced from PostFilterPlugins.
2020-07-08 09:58:42 -07:00
Patrick Ohly
cf735a3bf7 CSIStorageCapacity: integration test
This is similar to the E2E test, it just doesn't need a real cluster.
2020-07-08 08:02:26 +02:00
Jordan Liggitt
1c8c850944 Skip expensive integration tests in short run mode 2020-07-07 14:41:21 -04:00
Jordan Liggitt
dcc536097a Deflake timeout admission test 2020-07-07 13:36:07 -04:00
Rob Scott
85d5a15841
Adding integration and e2e tests to cover EndpointSliceMirroring 2020-07-06 12:43:34 -07:00
Kubernetes Prow Robot
865cbf0bdf
Merge pull request #91517 from gaurav1086/Remove_unnecessary_Sprintfs
cleanup: Remove_unnecessary_Sprintfs
2020-07-05 05:26:49 -07:00
Patrick Ohly
9a66e8e1b5 CSIStorageCapacity: 'make update' 2020-07-03 21:54:14 +02:00
Patrick Ohly
22aeb81e84 CSIStorageCapacity: CSIStorageCapacity API
This adds the CSIStorageCapacity API change for
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1472-storage-capacity-tracking
2020-07-03 21:54:14 +02:00
Kubernetes Prow Robot
b6cbe1b8de
Merge pull request #92662 from chelseychen/event-api-fallback
Switch event recorder to use events.k8s.io/v1
2020-07-03 05:03:15 -07:00
Kubernetes Prow Robot
6da40542e7
Merge pull request #92706 from nodo/scheduler-integration-test-add-labels-cleanup
Create nodes with labels instead of adding them later
2020-07-02 17:46:47 -07:00
Chelsey Chen
ade2422883 Switch event recorder to use events.k8s.io/v1 2020-07-02 14:50:41 -04:00
Kubernetes Prow Robot
3f585835d0
Merge pull request #92713 from liggitt/deflake-list-rv-0
Deflake TestListResourceVersion0
2020-07-02 04:18:07 -07:00
Kubernetes Prow Robot
1b871091b9
Merge pull request #91645 from chelseychen/event-api
Promote new Event API to v1
2020-07-02 04:16:46 -07:00
Andrea Nodari
a759fb20ff Create nodes with labels instead of adding them later 2020-07-02 08:56:32 +02:00
Jordan Liggitt
017a6febe5 Deflake TestListResourceVersion0 2020-07-01 13:59:40 -04:00
Jordan Liggitt
5eef60a00a Add warnings capability for admission webhooks 2020-07-01 12:14:06 -04:00
Chelsey Chen
75612c1746 Promote new Event API to v1 2020-07-01 10:50:28 -04:00
Kubernetes Prow Robot
4c853bb28f
Merge pull request #92644 from wojtek-t/informers_readyz
Wait for all informers to sync in /readyz.
2020-07-01 02:54:30 -07:00
Maciej Borsz
3f68000203 Wait for all informers to sync in /readyz. 2020-07-01 07:40:39 +02:00
Andrea Nodari
2e1042f959 Use NodeWrapper to directly initialize node with labels
Using NodeWrapper in the integration tests gives more flexibility when
creating nodes. For instance, tests can create nodes with labels or
with a specific sets of resources.

Also, NodeWrapper initialises a node with a capacity of 32 pods, which
can be overridden by the caller. This makes sure that a node is usable
as soon as it is created.
2020-06-30 17:18:15 +02:00
Kubernetes Prow Robot
281023790f
Merge pull request #92501 from rakeshreddybandi/rename-plugin
Rename DefaultPodTopologySpread plugin #91994
2020-06-29 18:34:58 -07:00
Kubernetes Prow Robot
4fc5c1eda2
Merge pull request #92391 from adtac/adtac/reserve-failure
scheduler: run Unreserve if Reserve fails
2020-06-27 16:04:14 -07:00
RAKESH REDDY BANDI
d44a20f9ca Rename DefaultPodTopologySpread plugin #91994 2020-06-27 13:46:31 -04:00
Kubernetes Prow Robot
27aca3f7c2
Merge pull request #91505 from jpbetz/rv-semantics
Consistent Resource Version Semantics for List
2020-06-27 02:26:17 -07:00
Adhityaa Chandrasekar
1b223b861a scheduler: run Unreserve if Reserve fails
If a reserve plugin's Reserve method returns an error, there could be
previously allocated resources from successfully completed reserve
plugins that must be unallocated by the corresponding Unreserve
operation. Since Unreserve operations are idempotent, this patch runs
the Unreserve operation of ALL reserve plugins when a Reserve operation
fails.
2020-06-26 20:41:33 +00:00
Joe Betz
e214f2408b Add ResourceVersionMatch parameter to make Resource Version semantics consistent for list 2020-06-25 20:49:57 -07:00
Adhityaa Chandrasekar
ec83143342 scheduler: merge Reserve and Unreserve plugins
Previously, separate interfaces were defined for Reserve and Unreserve
plugins. However, in nearly all cases, a plugin that allocates a
resource using Reserve will likely want to register itself for Unreserve
as well in order to free the allocated resource at the end of a failed
scheduling/binding cycle. Having separate plugins for Reserve and
Unreserve also adds unnecessary config toil. To that end, this patch
aims to merge the two plugins into a single interface called a
ReservePlugin that requires implementing both the Reserve and Unreserve
methods.
2020-06-24 21:10:35 +00:00
Yecheng Fu
4627b419b4 tests only 2020-06-23 22:18:33 +08:00
Wei Huang
d99cc01646
Register and enable defaultpreemption plugin
- Enable defaultpreemption as a PostFilter plugin
- Remote legacy hard-coded preemption logic
2020-06-22 17:22:27 -07:00