kubernetes/pkg
Tim Hockin ca8cfdcae9 Svc REST: Fix single<->dual-stack updates
This removes the old rest_tests and adds significantly more coverage.
Maybe too much.  The v4,v6 and v6,v4 tables are identical but for the
order of families.

This exposed that `trimFieldsForDualStackDowngrade` is called too late
to do anything (since we don't run strategy twice any more).  I moved
similar logic to `PatchAllocatedValues` but I hit on some unclarity.

Specifically, consider a PATCH operation.

Assume I have a valid dual-stack service (with 2 IPs, 2 families, and
policy either require or prefer). What fields can I patch, on their own,
to trigger a downgrade to single-stack?

I think patching policy to "single" is pretty clear intent.

But what if I leave policy and only patch `ipFamilies` down to a single
value (without violating the "can't change first family" rule)?

Or what if I patch `clusterIPs` down to a single IP value?

After much discussion, we decided to make a small API change (OK since
we are beta).  When you want a dual-stack Service you MUST specify the
`ipFamilyPolicy`.  Now we can infer less and avoid ambiguity.
2021-09-11 11:30:01 -07:00
..
api Svc REST: Add new model of feature tests 2021-09-11 11:30:00 -07:00
apis Svc REST: Validate input before IP allocation 2021-09-11 11:30:01 -07:00
auth Update auth OWNERS files to only use aliases 2021-04-07 10:46:03 -04:00
capabilities initialize capabilities unit test 2021-03-13 10:53:47 +01:00
client Prune stale entries from OWNERS files 2021-04-13 20:54:50 -04:00
cloudprovider generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
cluster/ports refactor: disable insecure serving in controller-manager 2021-05-03 00:01:49 +08:00
controller Merge pull request #101928 from alexanderConstantinescu/drain-workqueue 2021-09-10 18:02:06 -07:00
controlplane Merge pull request #104231 from astraw99/fix_unified_workers 2021-08-27 09:34:05 -07:00
credentialprovider fix Log attempts to output resp.Body 2021-09-06 23:01:03 +08:00
features Modify TTLAfterFinished state to beta in comment 2021-09-01 10:50:17 +08:00
fieldpath hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
generated enable verify-golangci-lint.sh 2021-07-14 08:53:33 -04:00
kubeapiserver admission: run PodSecurity before PodSecurityPolicy 2021-09-01 11:39:58 -04:00
kubectl hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
kubelet Merge pull request #104817 from smarterclayton/pod_status 2021-09-09 22:15:59 -07:00
kubemark run hack/update-netparse-cve.sh 2021-08-20 10:42:09 +02:00
printers csr: add expirationSeconds field to control cert lifetime 2021-07-01 23:38:15 -04:00
probe Fix test order in /pkg/probe/http/http_test.go 2021-06-05 07:27:34 +00:00
proxy Merge pull request #104756 from tnqn/ipvs-sctp-masquerade 2021-09-09 15:34:56 -07:00
quota/v1 Fixed several spelling mistakes 2021-03-30 23:02:09 +02:00
registry Svc REST: Fix single<->dual-stack updates 2021-09-11 11:30:01 -07:00
routes hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
scheduler Merge pull request #104866 from zzchun/fix-typo-in-framework-interface 2021-09-10 06:46:01 -07:00
security generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
securitycontext Kubelet updates for Windows HostProcess Containers 2021-05-19 16:24:14 -07:00
serviceaccount allow multiple of --service-account-issuer 2021-04-19 09:54:11 -07:00
util generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
volume Merge pull request #104747 from kinvolk/invidian/typos 2021-09-09 18:04:57 -07:00
windows/service generated: Run hack/update-gofmt.sh 2021-08-24 15:47:49 -04:00
.import-restrictions cmd/api/testing no longer overrides pkg's rules 2020-04-28 08:46:49 -07:00
OWNERS Sign up dims for additional review roles 2020-08-08 19:08:38 -04:00