Commit Graph

409 Commits

Author SHA1 Message Date
galal-hussein
59644b2255 Add the ability to add extra admission plugins
Signed-off-by: galal-hussein <hussein.galal.ahmed.11@gmail.com>
2026-06-12 11:47:21 -03:00
Erik Wilson
3c1a46cc52 Update kubernetes service on start for port changes 2026-06-12 11:47:21 -03:00
Antonio Ojea
0266d3bcb3 Allow single-to-dual-stack reconfiguration for ServiceCIDR
This change modifies the validation logic for ServiceCIDR updates
(`ValidateServiceCIDRUpdate`) to specifically permit upgrading a
single-stack ServiceCIDR (either IPv4 or IPv6) to a dual-stack
configuration.

This reconfiguration path is considered safe because it only involves adding
a new CIDR range without altering the existing primary CIDR. This
ensures that existing Service IP allocations are not disrupted.

Other modifications, such as:
- Downgrading from dual-stack to single-stack
- Reordering CIDRs in a dual-stack configuration
- Changing the primary CIDR during a single-to-dual-stack
  reconfiguration

remain disallowed by the validation. These operations carry a higher
risk of breaking existing Services or cluster networking
configurations. Preventing these updates automatically encourages
administrators to perform such changes manually after carefully
assessing the potential impact on their specific cluster environment.
The validation errors and controller logs provide guidance when such
disallowed changes are attempted.

Change-Id: I41dc09dfddb05f277925da2262f8114d6accbd1d
2025-04-14 17:05:44 +00:00
Kubernetes Prow Robot
070f0ad3bd Merge pull request #129970 from mortent/AddResourceV1beta2API
Add resource v1beta2 API
2025-03-26 09:10:47 -07:00
Morten Torkildsen
39507d911f Add resource v1beta2 API 2025-03-26 14:41:09 +00:00
James Munnelly
6ddabb6ee6 updating to reflect latest KEP design 2025-03-20 20:19:53 +00:00
James Munnelly
5e7e1e7cf1 KEP-4742: Node Topology Labels via Downward API 2025-03-20 20:19:51 +00:00
Jordan Liggitt
c10dc41681 Ensure --enable-logs-handler help appears in kube-apiserver help 2025-03-20 11:11:16 -04:00
Kubernetes Prow Robot
b4c6895d0b Merge pull request #130930 from siyuanfoundation/help
chore: update emulation version help msg.
2025-03-19 17:54:58 -07:00
Siyuan Zhang
0ec6566c68 chore: update emulation version help msg.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-03-19 13:07:19 -07:00
Kubernetes Prow Robot
2b79593ece Merge pull request #130225 from ritazh/dra-admin-access-namespace
DRA: AdminAccess validate based on namespace label
2025-03-19 10:18:50 -07:00
Rita Zhang
0301e5a9f8 DRA: AdminAccess validate based on namespace label
Signed-off-by: Rita Zhang <rita.z.zhang@gmail.com>
2025-03-18 22:56:54 -07:00
Kubernetes Prow Robot
a6227695ab Merge pull request #128402 from richabanker/mvp-agg-discovery
KEP 4020: Replace StorageVersionAPI with aggregated discovery to fetch served resources by a peer apiserver
2025-03-18 21:43:49 -07:00
Richa Banker
8b2cee83c1 Replace StorageVersion API with aggregated discovery to fetch served resources by a peer for MVP
Co-authored-by: Joe Betz <jpbetz@google.com>

Co-authored-by: Jordan Liggitt <jordan@liggitt.net>
2025-03-18 13:27:27 -07:00
Kubernetes Prow Robot
8b08487283 Merge pull request #130354 from siyuanfoundation/forward-api
KEP-4330: add forward compatibility for compatibility mode
2025-03-13 18:55:57 -07:00
Kubernetes Prow Robot
23d6377028 Merge pull request #130019 from yongruilin/version-intro
KEP-4330: extend version information with more detailed version fields
2025-03-13 17:43:46 -07:00
yongruilin
a3094ccbe6 feat: extend version information with more detailed version fields
- Add new version fields to version.Info struct:
  * EmulationMajor and EmulationMinor to track emulated version
  * MinCompatibilityMajor and MinCompatibilityMinor for compatibility tracking
- Update related code to populate and use these new fields
- Improve version information documentation and OpenAPI generation
- Modify version routes and documentation to reflect new version information structure
2025-03-13 21:44:31 +00:00
Jefftree
5ba4a90fda Add LeaseCandidate v1beta1 2025-03-12 17:52:10 +00:00
Kubernetes Prow Robot
f13237a34e Merge pull request #130735 from Jefftree/cle-lexo-check
CLE: Remove invalid emulated version and add lexographical order test
2025-03-11 19:47:59 -07:00
Jefftree
775b118a6d Remove invalid emulated version and add lexographical order test 2025-03-11 21:00:48 +00:00
Kubernetes Prow Robot
ac05e1a48e Merge pull request #130533 from Henrywu573/parall
Parallelize lease candidate ping
2025-03-11 12:47:53 -07:00
Stanislav Láznička
e0f536bf1f use the ClusterTrustBundles beta API 2025-03-11 18:07:24 +01:00
Kubernetes Prow Robot
8f97ac7fcf Merge pull request #130530 from pacoxu/v1.33-fg-cleanup
v1.33 feature gate cleanup
2025-03-10 23:03:46 -07:00
Paco Xu
8195f82fe8 remove AggregatedDiscoveryEndpoint that was GAed in v1.30 2025-03-11 10:51:43 +08:00
Siyuan Zhang
3d2d8db835 Add option to explicitly enable future gv or gvr in runtime-config.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-03-10 12:13:45 -07:00
Siyuan Zhang
819cb8fe22 Add emulation forward compatibility into api enablement and RemoveDeletedKinds.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-03-10 11:56:40 -07:00
Stanislav Láznička
dbf780a48a authn-trust: don't react to target CM updates
If kube-apiservers run at a different version (during upgrades) and
each has different opinion on what the `extension-apiserver-authentication`
config map should look like, they would start dueling with config map
writes.

This commit removes handling of the update events of the target CM
in order to reduce the amount of such dueling to once a minute, as
the controller is guaranteed to run at least once a minute anyway.

The idea is that a cluster state with two different versions of
kube-apiserver should never be permanent, and so a reduced amount of
dueling for that period is tolerable.
2025-03-10 11:28:02 +01:00
Henry Wu
5917343e45 Parallelize lease candidate ping 2025-03-06 01:02:45 -08:00
Henry Wu
ca9734afaa Add third party strategy to the coordinate leader election integration test 2025-03-03 14:00:16 -08:00
Jefftree
05a90bf642 Revert "Add LeaseCandidate v1beta1"
This reverts commit fad4594fd9.
2025-03-01 14:14:25 +00:00
Jefftree
1a1b566d61 Revert "LeaseCandidate alpha -> beta,"
This reverts commit ac7a95efb0.
2025-03-01 14:14:19 +00:00
Jefftree
ac7a95efb0 LeaseCandidate alpha -> beta, 2025-02-27 17:50:36 +00:00
Jefftree
fad4594fd9 Add LeaseCandidate v1beta1 2025-02-27 15:41:26 +00:00
Kubernetes Prow Robot
1e38c86893 Merge pull request #129996 from yongruilin/fix-flag-apiserver
fix: apiserver flagz to response actual parsed flags
2025-02-16 13:56:23 -08:00
Mark Rossetti
5e6611af55 fixing various unit tests on Windows that create abstract sockets
by now having them create file-based sockets on windows/darwin

Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2025-02-13 15:41:33 -08:00
yongruilin
b1d72a5b7c test: Add emulated-version flag verification in flagz test 2025-02-07 22:18:36 -08:00
Siyuan Zhang
8fc3a33454 Refactor compatibility version code
Replace DefaultComponentGlobalsRegistry with new instance of componentGlobalsRegistry in test api server.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move kube effective version validation out of component base.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move DefaultComponentGlobalsRegistry out of component base.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

move ComponentGlobalsRegistry out of featuregate pkg.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

remove usage of DefaultComponentGlobalsRegistry in test files.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

change non-test DefaultKubeEffectiveVersion to use DefaultBuildEffectiveVersion.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Restore useDefaultBuildBinaryVersion in effective version.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

rename DefaultKubeEffectiveVersion to DefaultKubeEffectiveVersionForTest.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

pass options.ComponentGlobalsRegistry into config for controller manager and scheduler.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Pass apiserver effective version to DefaultResourceEncodingConfig.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

change statusz registry to take effective version from the components.

Signed-off-by: Siyuan Zhang <sizhang@google.com>

Address review comments

Signed-off-by: Siyuan Zhang <sizhang@google.com>

update vendor

Signed-off-by: Siyuan Zhang <sizhang@google.com>
2025-02-05 16:10:53 -08:00
Samuel Davidson
7936d64e03 Replace IsExternalSigner boolean with ExtendedSigningDuration throughout apiserver to ensure consistent token signing length between local and external token signing. 2025-01-29 17:49:22 +00:00
Antonio Ojea
33ba585534 update kube-apiserver 2025-01-20 13:01:53 +00:00
Antoni Zawodny
4a2b7ee569 Configure watch cache history window based on request timeout 2024-12-17 15:06:00 +01:00
Kubernetes Prow Robot
4c2acddaa0 Merge pull request #129059 from liggitt/externaljwt-flake
Isolate mock signer for externaljwt tests
2024-12-12 16:44:28 +01:00
Kubernetes Prow Robot
e8615e2712 Merge pull request #129054 from pohly/remove-import-name
remove import doc comments
2024-12-12 09:58:35 +01:00
Monis Khan
779d76176a Update tests to handle RemoteRequestHeaderUID
Signed-off-by: Monis Khan <mok@microsoft.com>
2024-12-04 16:04:36 -05:00
Stanislav Láznička
a051b067cd featuregate UID in RequestHeader authenticator 2024-12-04 16:26:28 +01:00
Jordan Liggitt
1fd76884b9 Isolate mock signer for externaljwt tests 2024-12-02 18:44:40 -05:00
Patrick Ohly
8a908e0c0b remove import doc comments
The "// import <path>" comment has been superseded by Go modules.
We don't have to remove them, but doing so has some advantages:

- They are used inconsistently, which is confusing.
- We can then also remove the (currently broken) hack/update-vanity-imports.sh.
- Last but not least, it would be a first step towards avoiding the k8s.io domain.

This commit was generated with
   sed -i -e 's;^package \(.*\) // import.*;package \1;' $(git grep -l '^package.*// import' | grep -v 'vendor/')

Everything was included, except for
   package labels // import k8s.io/kubernetes/pkg/util/labels
because that package is marked as "read-only".
2024-12-02 16:59:34 +01:00
Kubernetes Prow Robot
45260fd76a Merge pull request #127857 from Jefftree/cle-v1alpha2
Coordinated Leader Election add v1alpha2
2024-11-08 07:10:43 +00:00
Jefftree
0ce7b688a6 v1alpha2 LeaseCandidate API 2024-11-08 02:27:19 +00:00
Richa Banker
da8dc433e9 Add flagz implementation and enablement in apiserver 2024-11-07 17:11:49 -08:00
Richa Banker
8bf6eecedf add statusz implementation and enablement in apiserver 2024-11-07 12:37:38 -08:00