Commit Graph

297 Commits

Author SHA1 Message Date
Abdullah Gharaibeh
3c5f018f8e Add CrossNamespacePodAffinity quota scope and PodAffinityTerm.NamespaceSelector APIs, and CrossNamespacePodAffinity quota scope implementation. 2021-03-03 22:52:43 -05:00
Tim Hockin
84856c7cae Remove defaults for ipFamilyPolicy and ipFamilies
These same values are set in the REST stack and it's easier to maintain
that code all in one place.

defaults.go is best for static values.
2021-03-03 09:42:02 -08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
Kubernetes Prow Robot
c200a8f9b7
Merge pull request #98433 from damemi/remove-helper-from-volume-zone
Move GetPersistentVolumeClaimClass to component-helpers
2021-02-26 12:38:15 -08:00
Nikhita Raghunath
6cef3a4e33 *: remove nikhiljindal from OWNERS 2021-02-16 10:59:26 +05:30
Nikhita Raghunath
6b12c96a9b *: remove madhusudancs from reviewers 2021-02-16 10:59:26 +05:30
Nikhita Raghunath
b11516d69f *: move gmarek to emeritus_approvers 2021-02-16 10:59:19 +05:30
Khaled (Kal) Henidak
32b9e31c23 ammend tests to ensure feat gate is off when expected (beta: gate is always on) 2021-02-10 23:58:55 +00:00
lala123912
d85bf77d26 organize apis unit tests into subtests 2021-02-09 15:43:27 +08:00
Mike Dame
578ff3ec34 Move Taint/Toleration helpers to component-helpers repo
This is part of the goal for scheduling to remove dependencies on internal
packages for the scheduling framework. It also provides these functions in an
external location for other components and projects to import.
2021-02-01 11:06:03 -05:00
Mike Dame
ba72411aa2 Move GetPersistentVolumeClaimClass to component-helpers
The goal of this move is related to issue 89930, to break the dependence
of scheduling plugins on internal helpers. This function can easily move to
component-helpers where it will be used by other components as well.
2021-02-01 10:48:38 -05:00
Kubernetes Prow Robot
0a0490e34f
Merge pull request #98576 from kevindelgado/ssa
Fix SSA for APIService
2021-01-29 17:21:58 -08:00
Jordan Liggitt
dab5112240 Declare TCP default for service port protocol 2021-01-29 18:30:34 +00:00
Mike Dame
73d8eba1a4 Scheduler: move GetAvoidPodsFromNodeAnnotations to component-helpers 2021-01-28 14:41:55 -05:00
Kubernetes Prow Robot
5e9b43eab6
Merge pull request #96960 from Jefftree/defaulter-diff
Update defaulter gen to not use reflect
2021-01-15 17:07:44 -08:00
Kubernetes Prow Robot
0580273e5f
Merge pull request #96353 from latteczy/add_helper_test
add unit test for helper.go
2020-12-16 21:41:09 -08:00
caozhiyuan
9b19dfca2c add unit test for helper.go 2020-12-17 12:40:29 +08:00
Jefftree
6addd69529 Update generator to not use reflect 2020-12-14 16:38:23 -08:00
Jefftree
50e7aa49aa Integrate defaults marker and remove ContainerPort defaulter 2020-11-13 17:27:40 -08:00
Laszlo Janosi
c970a46bc1
Mixed protocol support for Services with type=LoadBalancer (#94028)
* Mixed protocol support for Services with type=LoadBalancer

KEP: https://github.com/kubernetes/enhancements/blob/master/keps/sig-network/20200103-mixed-protocol-lb.md
Add new feature gate to control the support of mixed protocols in Services with type=LoadBalancer
Add new fields to the ServiceStatus
  Add Ports to the LoadBalancerIngress, so cloud provider implementations can report the status of the requested load balanc
er ports
  Add ServiceCondition to the ServiceStatus so Service controllers can indicate the conditions of the Service

* regenerate conflicting stuff
2020-11-13 13:21:04 -08:00
Lars Ekman
8fca0f9955 Update generated files 2020-11-13 07:42:58 +01:00
Lars Ekman
1f4d852f2f Add service.spec.AllocateLoadBalancerNodePorts 2020-11-13 07:37:22 +01:00
Patrik Cyvoct
d29665cc17
Revert "Merge pull request #92312 from Sh4d1/kep_1860"
This reverts commit ef16faf409, reversing
changes made to 2343b8a68b.
2020-11-11 10:26:53 +01:00
Patrik Cyvoct
20fc86df25
fix defaulting
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-11-07 10:00:59 +01:00
Patrik Cyvoct
af7494e896
Update generated
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-11-07 10:00:52 +01:00
Patrik Cyvoct
7bdf2af648
fix review
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-11-07 10:00:51 +01:00
Patrik Cyvoct
7460f9e00b
fix rebase
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-11-07 10:00:30 +01:00
Patrik Cyvoct
0153b96ab8
fix review
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
2020-11-07 10:00:27 +01:00
Kubernetes Prow Robot
17dcccbe07
Merge pull request #96109 from ingvagabund/move-IsScalarResourceName-under-scheduler
Move pkg/apis/core/v1.IsScalarResourceName under pkg/scheduler/util
2020-11-02 10:24:27 -08:00
Kubernetes Prow Robot
ad6a2af7d8
Merge pull request #95531 from damemi/move-scheduler-helpers
Move MatchNodeSelectorTerms to k8s.io/component-helpers
2020-10-29 20:06:05 -07:00
Kubernetes Prow Robot
e91cb0b1b5
Merge pull request #95196 from thockin/auto-wipe-linked-service-fields
Automatically wipe dependent fields on service "type" updates
2020-10-29 17:40:06 -07:00
Mike Dame
b7ba77c25b Move MatchNodeSelectorTerms to k8s.io/component-helpers 2020-10-29 13:39:13 -04:00
Kubernetes Prow Robot
2729b8e375
Merge pull request #95871 from damemi/move-unchanged-scheduler-helpers
Change function signature for MatchNodeSelectorTerms
2020-10-29 04:18:59 -07:00
Tim Hockin
4f8fb1d3ca Wipe some fields on service "type" updates
Service has had a problem since forever:

- User creates a service type=LoadBalancer
- We silently allocate them a NodePort
- User changes type to ClusterIP
- We fail the operation because they did not clear NodePort

They never asked for or used the NodePort!

Dual-stack introduced some dependent fields that get auto-wiped on
updates.  This carries it further.

If you squint, you can see Service as a big, messy discriminated union,
with type as the discriminator. Ignoring fields for non-selected
union-modes seems right.

This introduces the potential for an apply loop. Specifically, we will
accept YAML that we did not previously accept. Apply could see the
field in local YAML and not in the server and repeatedly try to patch it
in. But since that YAML is currently an error, it seems like a very low
risk. Almost nobody actually specifies their own NodePort values.

To mitigate this somewhat, we only auto-wipe on updates. The same YAML
would fail to create. This is a little inconsistent. We could
auto-wipe on create, too, at the risk of more potential impact.

To do this properly, we need to know the old and new values, which means
we can not do it in defaulting or conversion. So we do it in strategy.

This change also adds unit tests and updates e2e tests to rely on and
verify this behavior.
2020-10-28 10:41:26 -07:00
Mike Dame
d9f334683e Change function signature for MatchNodeSelectorTerms
As part of externalizing this function to the k8s.io/component-helpers repo,
this commit simplifies the function signature and makes its 2 helpers private
(nodeSelectorRequirementsAsSelector and nodeSelectorRequirementsAsFieldSelector).
2020-10-27 12:52:06 -04:00
Jan Chaloupka
6822a0ec20 Move pkg/apis/core/v1.IsScalarResourceName under pkg/scheduler/util
IsScalarResourceName is imported only inside pkg/scheduler packages.
2020-10-27 13:40:32 +01:00
Khaled Henidak (Kal)
6675eba3ef
dual stack services (#91824)
* api: structure change

* api: defaulting, conversion, and validation

* [FIX] validation: auto remove second ip/family when service changes to SingleStack

* [FIX] api: defaulting, conversion, and validation

* api-server: clusterIPs alloc, printers, storage and strategy

* [FIX] clusterIPs default on read

* alloc: auto remove second ip/family when service changes to SingleStack

* api-server: repair loop handling for clusterIPs

* api-server: force kubernetes default service into single stack

* api-server: tie dualstack feature flag with endpoint feature flag

* controller-manager: feature flag, endpoint, and endpointSlice controllers handling multi family service

* [FIX] controller-manager: feature flag, endpoint, and endpointSlicecontrollers handling multi family service

* kube-proxy: feature-flag, utils, proxier, and meta proxier

* [FIX] kubeproxy: call both proxier at the same time

* kubenet: remove forced pod IP sorting

* kubectl: modify describe to include ClusterIPs, IPFamilies, and IPFamilyPolicy

* e2e: fix tests that depends on IPFamily field AND add dual stack tests

* e2e: fix expected error message for ClusterIP immutability

* add integration tests for dualstack

the third phase of dual stack is a very complex change in the API,
basically it introduces Dual Stack services. Main changes are:

- It pluralizes the Service IPFamily field to IPFamilies,
and removes the singular field.
- It introduces a new field IPFamilyPolicyType that can take
3 values to express the "dual-stack(mad)ness" of the cluster:
SingleStack, PreferDualStack and RequireDualStack
- It pluralizes ClusterIP to ClusterIPs.

The goal is to add coverage to the services API operations,
taking into account the 6 different modes a cluster can have:

- single stack: IP4 or IPv6 (as of today)
- dual stack: IPv4 only, IPv6 only, IPv4 - IPv6, IPv6 - IPv4

* [FIX] add integration tests for dualstack

* generated data

* generated files

Co-authored-by: Antonio Ojea <aojea@redhat.com>
2020-10-26 13:15:59 -07:00
Arjun Naik
0fec7b0f7e Added functionality and API for pod autoscaling based on container resources
Signed-off-by: Arjun Naik <anaik@redhat.com>
2020-10-21 21:10:05 +02:00
wawa0210
6709d4f938
Keep the imagePullPolicy of kubectl alpha debug consistent with the default 2020-09-24 00:22:53 +08:00
Kubernetes Prow Robot
c23a4b08d7
Merge pull request #92874 from chelseychen/event-api
Fix a few places where source field is empty when creating events via events/v1
2020-07-11 20:57:31 -07:00
Patrick Ohly
32fdf688b3 GenericEphemeralVolume: 'make update' for API 2020-07-09 11:03:03 +02:00
Patrick Ohly
c05c8e915b GenericEphemeralVolume: feature gate, API, documentation
As explained in
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1698-generic-ephemeral-volumes,
CSI inline volumes are not suitable for more "normal" kinds of storage
systems. For those a new approach is needed: "generic ephemeral inline
volumes".
2020-07-09 11:02:59 +02:00
Chelsey Chen
e010436e2a Update conversion between ReportingController and Source.Component 2020-07-08 08:46:38 -04:00
Paulo Gomes
8976e3620f
Add seccomp enforcement and validation based on new GA fields
Adds seccomp validation.

This ensures that field and annotation values must match when present.

Co-authored-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 09:13:25 +01:00
Benjamin Elder
2abc8afece eparis to emeritus 2020-06-30 09:50:44 -07:00
Benjamin Elder
960ef085e9 zmerlynn to emeritus 2020-06-30 09:43:59 -07:00
Javier Diaz-Montes
7ef7ce2a3c Adding autogenerated files 2020-06-14 21:26:27 -04:00
wojtekt
5a9b6a3114 Autogenerated 2020-04-27 18:53:11 +02:00
Kubernetes Prow Robot
b4a088f1cf
Merge pull request #88217 from gkarthiks/master
fix: golint failures
2020-04-16 08:38:46 -07:00
Hemant Kumar
053baaf143 Update generated files
update generated code
2020-03-04 21:23:31 -05:00
Kubernetes Prow Robot
f221dbb91b
Merge pull request #88505 from liggitt/pod-ip-patch
Honor status.podIP over status.podIPs and node.spec.podCIDR over node.spec.PodCIDRs when mismatched
2020-03-02 16:16:36 -08:00
Jordan Liggitt
60da52a24a Honor status.podIP over status.podIPs, node.spec.podCIDR over node.spec.podCIDRs 2020-03-02 14:21:22 -05:00
Kubernetes Prow Robot
86141c0cce
Merge pull request #88503 from robscott/app-protocol
Adding AppProtocol to Service and Endpoints Ports
2020-02-26 00:20:40 -08:00
Rob Scott
6a33727632
Adding AppProtocol to Service and Endpoints Ports 2020-02-25 17:42:34 -08:00
Kubernetes Prow Robot
851efa8a34
Merge pull request #84051 from bart0sh/PR0079-multiple-sizes-hugepages
Implement support for multiple sizes huge pages
2020-02-25 14:40:27 -08:00
Steve Azzopardi
4eb06577dc
Fix golint issues for core/v1/validation
reference https://github.com/kubernetes/kubernetes/issues/68026
2020-02-24 20:50:39 +01:00
Taesun Lee
b873cbbed5 Fix: pkg/apis Typos in comments, function name, error message
poicy -> policy
varialbes -> variables
exeuction -> execution
Resaurces -> Resources
TestSetDefaulEndpointsProtocol -> TestSetDefaultEndpointsProtocol
TestSetDefaulServiceTargetPort -> TestSetDefaultServiceTargetPort
TestSetDefaulServiceExternalTraffic -> TestSetDefaultServiceExternalTraffic
2020-02-24 00:11:00 +09:00
Ed Bartosh
882d6e93af Implement tests for multiple sizes huge pages
Co-Authored-By: Odin Ugedal <odin@ugedal.com>
2020-02-19 18:15:40 +02:00
Ed Bartosh
0eb65bd7da Implement support for multiple sizes huge pages
This implementation allows Pod to request multiple hugepage resources
of different size and mount hugepage volumes using storage medium
HugePage-<size>, e.g.

spec:
  containers:
    resources:
      requests:
        hugepages-2Mi: 2Mi
        hugepages-1Gi: 2Gi
    volumeMounts:
      - mountPath: /hugepages-2Mi
        name: hugepage-2mi
      - mountPath: /hugepages-1Gi
        name: hugepage-1gi
    ...
  volumes:
    - name: hugepage-2mi
      emptyDir:
        medium: HugePages-2Mi
    - name: hugepage-1gi
      emptyDir:
        medium: HugePages-1Gi

NOTE: This is an alpha feature.
      Feature gate HugePageStorageMediumSize must be enabled for it to work.
2020-02-19 18:15:40 +02:00
gkarthiks
8853a985fd fix: golint failures
Signed-off-by: gkarthiks <github.gkarthiks@gmail.com>
2020-02-16 15:09:45 -08:00
wojtekt
1fc80c57ee Autogenerated 2020-02-04 16:06:36 +01:00
wojtekt
881dde8bee Remove unnecessary manual conversions 2020-02-04 16:05:25 +01:00
sewon.oh
463442aa29
Update container hugepage limit when creating the container
Unit test for updating container hugepage limit
Add warning message about ignoring case.
Update error handling about hugepage size requirements

Signed-off-by: sewon.oh <sewon.oh@samsung.com>
2020-01-28 09:35:02 +09:00
Kubernetes Prow Robot
2cd685a020
Merge pull request #87250 from starizard/adding-taint-toleration-error-reasons
Adding taint toleration error reasons
2020-01-25 01:23:01 -08:00
Shawn Rebello
22bd26fefb Adding taint toleration error reasons 2020-01-24 02:50:55 +05:30
wojtekt
9174905ae7 Autogenerated 2020-01-12 21:09:05 +01:00
Jordan Liggitt
bb90f0ff94 Install APIs directly for tests 2019-12-13 11:56:29 -05:00
Kubernetes Prow Robot
d9be37e926
Merge pull request #72046 from m1093782566/service-topology-api
Service Topology implementation
2019-11-15 02:57:42 -08:00
Roc Chan
31d623b4d7 Autogenerated files 2019-11-15 14:37:44 +08:00
Kubernetes Prow Robot
4e45328e65
Merge pull request #83123 from aramase/dualstack-downward-api
Dualstack downward api
2019-11-14 22:13:42 -08:00
wojtekt
067d173266 Eliminate couple unnecessary conversions 2019-11-12 15:00:09 +01:00
wojtekt
0b4b7d95a2 Autogenerated 2019-11-02 16:33:47 +01:00
Anish Ramasekar
af4d18ccf9
add status.podIPs in downward api
add host file write for podIPs

update tests

remove import alias

update type check

update type check

remove import alias

update open api spec

add tests

update test

add tests

address review comments

update imports

remove todo and import alias
2019-10-25 09:18:49 -07:00
wojtekt
7b6bcdf780 Autogenerated code 2019-10-24 20:21:00 +02:00
wojtekt
d7011f1bdb Cleanup explicitly registered functions 2019-10-24 20:21:00 +02:00
Kubernetes Prow Robot
6d4aeccfcc
Merge pull request #83709 from wojtek-t/autogenerate_decode_parameters
Autogenerate conversions for decoding parameters
2019-10-23 19:07:05 -07:00
Kubernetes Prow Robot
5d3efb06d4
Merge pull request #83865 from mrbobbytables/update-api-approvers-owners
Prune inactive owners from api-approver owned OWNERS files.
2019-10-23 12:50:46 -07:00
wojtekt
3be4d85ec6 Autogenerated files 2019-10-23 08:28:31 +02:00
Kubernetes Prow Robot
6a5f0e6eda
Merge pull request #81348 from yastij/code-org-service-controller
move service helpers to k8s.io/cloud-provider
2019-10-17 00:20:38 -07:00
Yassine TIJANI
d796baea27 move service helpers to k8s.io/cloud-provider
Signed-off-by: Yassine TIJANI <ytijani@vmware.com>
2019-10-16 14:12:11 +02:00
Bob Killen
03082531cc
Prune inactive owners from api-approver owned OWNERS files. 2019-10-13 08:54:18 -04:00
David Eads
a886247fe4 generated 2019-10-11 16:38:32 -04:00
Mahendra Kariya
3698100224 Fix golint errors in pkg/apis/core (#82919)
* Fix lint errors related to receiver name

Ref #68026

* Fix lint errors related to comments

Ref #68026

* Fix package name in comments

Ref #68026

* Rename Cpu to CPU

Ref #68026

* Fix lint errors related to naming convention

Ref #68026

* Remove deprecated field

DoNotUse_ExternalID has been deprecated and is not in use anymore.
It has been removed to fix lint errors related to underscores in field
names.

Ref #68026, #61966

* Include pkg/apis/core in golint check

Ref #68026

* Rename var to fix lint errors

Ref #68026

* Revert "Remove deprecated field"

This reverts commit 75e9bfc168077fcb9346e334b59d60a2c997735b.

Ref #82919

* Remove math from godoc

Ref #82919, #68026

* Remove underscore from var name

Ref #68026

* Rename var in staging core api type

Ref #68026
2019-09-25 11:06:51 -07:00
Kubernetes Prow Robot
7e906ae145
Merge pull request #82047 from roberthbailey/owners
Remove myself from reviewers across the repo
2019-09-04 04:35:00 -07:00
Matthias Bertschy
a042a4b0ee startupProbe: make update 2019-08-30 00:42:43 +02:00
Matthias Bertschy
1a08ea5984 startupProbe: Test changes 2019-08-30 00:40:26 +02:00
Jan Wozniak
b0459feb7d Update generated files
make generated_files UPDATE_API_KNOWN_VIOLATIONS=true
./hack/update-generated-protobuf.sh
./hack/update-openapi-spec.sh
./hack/update-bazel.sh
./hack/update-generated-swagger-docs.sh
./hack/update-generated-api-compatibility-data.sh
2019-08-29 13:26:13 +02:00
Khaled Henidak(Kal)
c27e0b029d phase 2: generated items 2019-08-28 16:11:46 +00:00
Khaled Henidak(Kal)
5e8ccda71c phase 2: api types + defaulting + validation + disabled fields handling 2019-08-28 15:59:43 +00:00
Robert Bailey
9d211ab352 Remove myself from reviewers across the repo so that PRs are no
longer assigned to me by blunderbuss.

Move myself to be an emeritus approver for the cluster directory.
2019-08-27 16:10:16 -07:00
Tim Allclair
49f50484b8 Delete duplicate resource.Quantity.Copy() 2019-08-19 17:23:14 -07:00
Lee Verberne
4a753c7a44 Generated code for ephemeral containers API 2019-07-22 11:19:22 +00:00
Lee Verberne
013f049ce0 Add Ephemeral Containers to the Kubernetes core API 2019-07-22 11:19:22 +00:00
Wei Huang
eafd4e96d9
EvenPodsSpread: auto-gen files 2019-07-18 17:34:26 -07:00
James Sturtevant
1c4edfba57 Run code generation for new field 2019-07-17 15:03:10 +00:00
Khaled Henidak(Kal)
af552ab469 generated items 2019-07-02 22:26:26 +00:00
Khaled Henidak(Kal)
54d42e6a65 types modifications + conversion + conversion testing 2019-07-02 15:39:05 +00:00
Kubernetes Prow Robot
9c8827f564
Merge pull request #78914 from liggitt/pod-spec-defaults
Add tests to detect default changes to podspec and podspectemplate defaults
2019-06-27 14:11:21 -07:00
Jordan Liggitt
617309cbce Add tests for podspec and podtemplatespec default changes 2019-06-27 12:56:43 -07:00
Kubernetes Prow Robot
cff6e42005
Merge pull request #75223 from sjenning/fix-pod-qos-init-containers
kubelet: include init containers when determining pod QoS
2019-06-25 01:14:37 -07:00