Commit Graph

670 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
f3560758d2
Merge pull request #114534 from ruquanzhao/skipaddons
kubeadm: Support skipping addons image pull
2023-10-30 04:20:44 +01:00
RuquanZhao
b0491d71bd Support skipping pulling addons image.
Add field DNS.Disabled and Proxy.Disabled in ClusterConfiguration to save status for `join` to read.
Signed-off-by: Ruquan Zhao <ruquan.zhao@arm.com>
2023-10-27 14:33:37 +08:00
Lubomir I. Ivanov
c2a04fa1cf kubeadm: fix export comments to make golangci-lint happy 2023-10-25 19:35:10 +03:00
SataQiu
8ae3277152 kubeadm: remove unused DNSAddOnType from v1beta4 API 2023-10-19 17:44:41 +08:00
Kubernetes Prow Robot
ba7feccfa3
Merge pull request #121290 from pacoxu/revert-119946-ignore_preflight_error
Revert "kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors"
2023-10-17 17:21:36 +02:00
Paco Xu
e3c58378bc
Revert "kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors" 2023-10-17 20:26:58 +08:00
Lubomir I. Ivanov
a45a813d5e kubeadm: fix "eliptic" typo in API package
Should be "elliptic".
2023-10-17 12:16:03 +03:00
Kubernetes Prow Robot
3548ef0092
Merge pull request #119946 from chendave/ignore_preflight_error
kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors
2023-10-16 14:41:19 +02:00
Dave Chen
8009530d77 kubeadm: FeatureGate MergeCLIArgumentsWithConfig is added for ignorePreflightErrors
Turn on FeatureGate MergeCLIArgumentsWithConfig to keep the legacy way of management of
ignorePreflightErrors, which means the value defined by the flag `ignore-preflight-errors`
will be merged with the value `ignorePreflightErrors` defined in the config file.

Otherwise, the value defined by the flag will replace the value from the config file if set.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-10-16 14:37:10 +08:00
Lubomir I. Ivanov
b5bffb6d97 kubeadm: add v1beta4.ClusterConfiguration.EncryptionAlgorithm
Add v1beta4.ClusterConfiguration.EncryptionAlgorithm field (string)
and allow the user to configure the cluster asymetric encryption
algorithm to be either "RSA" (default, 2048 pkey size) or "ECDSA" (P-256).
Add validation and fuzzing. Conversion from v1beta3 is not required
because an empty field value is accepted and defaulted to RSA if needed.

Leverage the existing configuration option (feature gate) PublicKeysECDSA
but rename the backend fields, arguments, function names to be more
generic - EncryptionAlgorithm instead of PublicKeyAlgorithm.
That is because once the feature gate is enabled the algorithm
configuration also applies to private keys. It also uses the kubeadm API
type (string) instead of the x509.PublicKeyAlgorithm enum (int).

Deprecate the PublicKeysECDSA feature gate with a message.
It should be removed with the release of v1beta4 or maximum one release
later (it is an alpha FG).
2023-09-21 11:48:48 +03:00
SataQiu
4e0c8a9752 kubeadm: remove reference of k8s.io/kubernetes/pkg/apis/core/v1
Co-authored-by: Dave Chen <dave.chen@arm.com>
2023-09-12 17:09:19 +08:00
SaumyaBhushan
df5c1bb1ea added documentation about the format of certificateKey
Signed-off-by: SaumyaBhushan <saumya.bhushan666@gmail.com>
2023-09-10 19:50:42 +05:30
Davanum Srinivas
889c8e919b
New repo who dis? distribution/reference
github.com/docker/distribution/reference has a new home github.com/distribution/reference

and a new tag v0.5.0. Let's switch to that.

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2023-08-31 21:53:40 -04:00
Kubernetes Prow Robot
e043bc08d4
Merge pull request #119156 from neolit123/1.28-add-support-for-dup-extraargs
kubeadm add support for structured ExtraArgs
2023-08-21 02:49:22 -07:00
SataQiu
093093593c kubeadm: fix the field path for JoinControlPlane.CertificateKey validation 2023-08-20 17:35:18 +08:00
SataQiu
75a80d5aba kubeadm: add validation to verify that the CertificateKey is a valid hex encoded AES key 2023-08-20 12:47:02 +08:00
Lubomir I. Ivanov
a505c7160e kubeadm: adapt the validation and utils for structured ExtraArgs
Use []kubeadm.Arg instead of map[string]string when
validating ExtraArgs in the API.

Add new GetArgValue() and SetArgValue() utilities
and tests in apis/kubeadm.

Add new utils for constucting commands from and to
a []kubeadm.Arg slice.
2023-08-16 13:27:05 +03:00
Lubomir I. Ivanov
bc6fcb72a8 kubeadm: add structured ExtraArgs in v1beta4
Add a new type Arg that holds a dedicated Name and Value.
Instead of using map[string]string for ExtraArgs in the
API use []Arg.

Adapt v1beta3 conversion to convert to/from the
legacy map[string]string.
2023-08-16 13:27:05 +03:00
Kubernetes Prow Robot
5054f2954d
Merge pull request #119279 from chendave/dryrun_init
kubeadm: Make dry-run is configurable in initConfiguration and joinConfiguration
2023-08-15 15:18:03 -07:00
Dave Chen
2ce07981af kubeadm: Make dry-run is configurable in joinConfiguration
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-17 17:37:50 +08:00
Dave Chen
f5a6797e56 kubeadm: Make dry-run is configurable in initConfiguration
The `dry-run` flag was able to use with the config file, since it was not
configurable in the config file.

Make it configurable in v1beta4, so that eventually, kubeadm could deprecate
the flag and suggest to use the config file instead.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-17 17:37:45 +08:00
SataQiu
bd9b78d686 kubeadm: remove the limitation that the 'ignorePreflightErrors' field can not be set to 'all' in kubeadm config file, and keep CLI / config consistent 2023-07-16 12:37:12 +08:00
Dave Chen
2a907e6004 kubeadm: fix fuzzing for ResetConfiguration
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-14 17:03:37 +08:00
Dave Chen
2e6715bc77 kubeadm: implementation of ResetConfiguration API types
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-14 17:03:31 +08:00
Kubernetes Prow Robot
746b88c6ff
Merge pull request #118867 from chendave/env_custom
kubeadm: Support custom env in control plane component
2023-07-03 22:02:52 -07:00
Dave Chen
c68a6b0745 kubeadm: fix fuzzing for ExtraEnvs defined in the control plane component
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-04 10:01:26 +08:00
Dave Chen
80b035a116 kubeadm: Support custom env in control plane component
Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-07-04 09:57:07 +08:00
Kubernetes Prow Robot
7bac0cee89
Merge pull request #118946 from SataQiu/clean-kubeadm-20230629
kubeadm: remove unused Kind and Resource functions from output API
2023-06-29 02:51:47 -07:00
SataQiu
24f4785e3e kubeadm: remove unused Kind and Resource functions from output API 2023-06-29 00:16:38 +08:00
SataQiu
90f82d05ce kubeadm: remove unused Kind and Resource functions from kubeadm internal API 2023-06-28 23:36:53 +08:00
Kubernetes Prow Robot
1c32c3bd9f
Merge pull request #118866 from neolit123/1.28-add-v1beta4-to-scheme
kubeadm: add v1beta4 to scheme; add --allow-experimental-api flag
2023-06-27 08:56:44 -07:00
SataQiu
4298953c26 kubeadm: remove unused Kind and Resource functions from v1beta4 API 2023-06-26 22:11:52 +08:00
Lubomir I. Ivanov
0774f779d5 kubeadm: add v1beta4 to the kubeadm API scheme
The highest priority is still v1beta3.
2023-06-26 13:43:47 +03:00
Lubomir I. Ivanov
edb59e9bc7 kubeadm: move token defaulting and related constants to token package
Move the defaulting of the BootstrapToken type inside the
bootstraptoken/v1 package. This prevents an error where
codegen complains that a defaulter for the type exists in both
the kubeadm v1beta3 and v1beta4.

Adapt kubeadm code to use the defaulter function and constants
that were moved to bootstraptoken/v1.

NOTE: technically this is a breaking change for direct users of
v1beta3/SetDefaults_BootstrapToken().
2023-06-21 13:34:21 +03:00
Lubomir I. Ivanov
eecac05871 kubeadm: add v1beta4 API boilerplate
Create v1beta4 by copying v1beta3.
2023-06-20 14:33:30 +03:00
SataQiu
170d5ef9fa code cleanup for kubeadm 2023-04-26 23:51:39 +08:00
Dave Chen
82990268ec kubeadm: remove the manual conversion from versioned cluster cfg to internal cfg
The manual conversion was needed to adapt `ClusterConfiguration.DNS` from v1beta2
to v1beta3, now that v1beta2 is removed from the code base, the manual conversion
is unnecessary as well.

The help to reduce the maintenance efforts.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2023-02-10 14:46:15 +08:00
SataQiu
3df577ea28 kubeadm: remove unused variable DefaultAuditPolicyLogMaxAge 2023-01-12 12:30:30 +08:00
Paco Xu
cca7a205ad remove kubeadm v1beta2 support 2023-01-05 21:30:26 +08:00
Paco Xu
b3056ea9bd remove the deprecated kubeadm v1beta2 API 2023-01-04 12:19:15 +08:00
Dave Chen
8c7609fbe2 kubeadm: bump to use golang generic
Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-12-14 10:31:18 +08:00
Dave Chen
1607babd35 kubeadm: print the invalid field when validating bootstrap token discovery
It was saying `discovery.bootstrapToken` is invalid with empty value, while
it is actually `discovery.bootstrapToken.caCertHashes` invalid.

Signed-off-by: Dave Chen <dave.chen@arm.com>
2022-10-26 13:45:00 +08:00
SataQiu
61cd585ad2 kubeadm: remove redundant import alias and unused apiclient util funcs 2022-09-28 12:36:54 +08:00
SataQiu
605f3dd89a kubeadm: fix the field path of ClusterConfiguration networking validation 2022-09-27 18:51:19 +08:00
SataQiu
b833e628b2 kubeadm: support image repository format validation 2022-09-26 19:38:42 +08:00
Claudiu Belu
d192029e6a unittests: Fixes cmd unit tests for Windows
Currently, there are some unit tests that are failing on Windows due to
various reasons:

- filepath.IsAbs does not consider "/" or "\" as absolute paths, even
  though files can be addressed as such.
- paths not properly joined (filepath.Join should be used).
- files not closed, which means that they cannot be removed / renamed.
- some assertions fail due to slashes / backslashes not matching.
- backslashes need to be escaped in yaml files, or put between ''
instead of "".
2022-08-26 16:03:13 +03:00
Kubernetes Prow Robot
3a650c5c56
Merge pull request #111502 from muyangren2/addtest_apiendpoint
add test for String
2022-08-01 12:10:40 -07:00
muyangren2
2422e99df3 add test for String
modify
2022-07-28 18:23:44 +08:00
muyangren2
fc6bbf991e add test in cmd/kubeadm/app/apis/kubeadm/validation/validation_test.go for ValidatePort
modify
2022-07-28 17:12:14 +08:00
Davanum Srinivas
a9593d634c
Generate and format files
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-07-26 13:14:05 -04:00