mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 05:57:25 +00:00
Merge pull request #100936 from lojies/cleanuppkgapi
code cleanup for pkg/api and pkg/apis
This commit is contained in:
commit
d9abcee491
@ -26,7 +26,6 @@ import (
|
|||||||
api "k8s.io/kubernetes/pkg/apis/core"
|
api "k8s.io/kubernetes/pkg/apis/core"
|
||||||
"k8s.io/kubernetes/pkg/apis/core/helper"
|
"k8s.io/kubernetes/pkg/apis/core/helper"
|
||||||
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
||||||
"k8s.io/kubernetes/pkg/apis/core/validation"
|
|
||||||
apivalidation "k8s.io/kubernetes/pkg/apis/core/validation"
|
apivalidation "k8s.io/kubernetes/pkg/apis/core/validation"
|
||||||
"k8s.io/kubernetes/pkg/features"
|
"k8s.io/kubernetes/pkg/features"
|
||||||
)
|
)
|
||||||
@ -394,7 +393,7 @@ func usesIndivisibleHugePagesValues(podSpec *api.PodSpec) bool {
|
|||||||
// GetValidationOptionsFromPodSpecAndMeta returns validation options based on pod specs and metadata
|
// GetValidationOptionsFromPodSpecAndMeta returns validation options based on pod specs and metadata
|
||||||
func GetValidationOptionsFromPodSpecAndMeta(podSpec, oldPodSpec *api.PodSpec, podMeta, oldPodMeta *metav1.ObjectMeta) apivalidation.PodValidationOptions {
|
func GetValidationOptionsFromPodSpecAndMeta(podSpec, oldPodSpec *api.PodSpec, podMeta, oldPodMeta *metav1.ObjectMeta) apivalidation.PodValidationOptions {
|
||||||
// default pod validation options based on feature gate
|
// default pod validation options based on feature gate
|
||||||
opts := validation.PodValidationOptions{
|
opts := apivalidation.PodValidationOptions{
|
||||||
// Allow multiple huge pages on pod create if feature is enabled
|
// Allow multiple huge pages on pod create if feature is enabled
|
||||||
AllowMultipleHugePageResources: utilfeature.DefaultFeatureGate.Enabled(features.HugePageStorageMediumSize),
|
AllowMultipleHugePageResources: utilfeature.DefaultFeatureGate.Enabled(features.HugePageStorageMediumSize),
|
||||||
// Allow pod spec to use hugepages in downward API if feature is enabled
|
// Allow pod spec to use hugepages in downward API if feature is enabled
|
||||||
|
@ -31,7 +31,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/validation/field"
|
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
featuregatetesting "k8s.io/component-base/featuregate/testing"
|
featuregatetesting "k8s.io/component-base/featuregate/testing"
|
||||||
"k8s.io/kubernetes/pkg/apis/core"
|
|
||||||
api "k8s.io/kubernetes/pkg/apis/core"
|
api "k8s.io/kubernetes/pkg/apis/core"
|
||||||
"k8s.io/kubernetes/pkg/features"
|
"k8s.io/kubernetes/pkg/features"
|
||||||
)
|
)
|
||||||
@ -1445,19 +1444,19 @@ func TestValidatePodDeletionCostOption(t *testing.T) {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "UpdateFeatureDisabled",
|
name: "UpdateFeatureDisabled",
|
||||||
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{core.PodDeletionCost: "100"}},
|
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{api.PodDeletionCost: "100"}},
|
||||||
featureEnabled: false,
|
featureEnabled: false,
|
||||||
wantAllowInvalidPodDeletionCost: true,
|
wantAllowInvalidPodDeletionCost: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "UpdateFeatureEnabledValidOldValue",
|
name: "UpdateFeatureEnabledValidOldValue",
|
||||||
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{core.PodDeletionCost: "100"}},
|
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{api.PodDeletionCost: "100"}},
|
||||||
featureEnabled: true,
|
featureEnabled: true,
|
||||||
wantAllowInvalidPodDeletionCost: false,
|
wantAllowInvalidPodDeletionCost: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "UpdateFeatureEnabledValidOldValue",
|
name: "UpdateFeatureEnabledValidOldValue",
|
||||||
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{core.PodDeletionCost: "invalid-value"}},
|
oldPodMeta: &metav1.ObjectMeta{Annotations: map[string]string{api.PodDeletionCost: "invalid-value"}},
|
||||||
featureEnabled: true,
|
featureEnabled: true,
|
||||||
wantAllowInvalidPodDeletionCost: true,
|
wantAllowInvalidPodDeletionCost: true,
|
||||||
},
|
},
|
||||||
|
@ -31,7 +31,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime/schema"
|
"k8s.io/apimachinery/pkg/runtime/schema"
|
||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
"k8s.io/apimachinery/pkg/util/validation/field"
|
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||||
"k8s.io/kubernetes/pkg/apis/certificates"
|
|
||||||
capi "k8s.io/kubernetes/pkg/apis/certificates"
|
capi "k8s.io/kubernetes/pkg/apis/certificates"
|
||||||
capiv1beta1 "k8s.io/kubernetes/pkg/apis/certificates/v1beta1"
|
capiv1beta1 "k8s.io/kubernetes/pkg/apis/certificates/v1beta1"
|
||||||
"k8s.io/kubernetes/pkg/apis/core"
|
"k8s.io/kubernetes/pkg/apis/core"
|
||||||
@ -357,8 +356,8 @@ func Test_getValidationOptions(t *testing.T) {
|
|||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
version schema.GroupVersion
|
version schema.GroupVersion
|
||||||
newCSR *certificates.CertificateSigningRequest
|
newCSR *capi.CertificateSigningRequest
|
||||||
oldCSR *certificates.CertificateSigningRequest
|
oldCSR *capi.CertificateSigningRequest
|
||||||
want certificateValidationOptions
|
want certificateValidationOptions
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
@ -510,8 +509,8 @@ func TestValidateCertificateSigningRequestUpdate(t *testing.T) {
|
|||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
newCSR *certificates.CertificateSigningRequest
|
newCSR *capi.CertificateSigningRequest
|
||||||
oldCSR *certificates.CertificateSigningRequest
|
oldCSR *capi.CertificateSigningRequest
|
||||||
versionErrs map[string][]string
|
versionErrs map[string][]string
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
@ -604,7 +603,7 @@ func TestValidateCertificateSigningRequestUpdate(t *testing.T) {
|
|||||||
for _, version := range []string{"v1", "v1beta1"} {
|
for _, version := range []string{"v1", "v1beta1"} {
|
||||||
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
||||||
gotErrs := sets.NewString()
|
gotErrs := sets.NewString()
|
||||||
for _, err := range ValidateCertificateSigningRequestUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: certificates.GroupName, Version: version}) {
|
for _, err := range ValidateCertificateSigningRequestUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: capi.GroupName, Version: version}) {
|
||||||
gotErrs.Insert(err.Error())
|
gotErrs.Insert(err.Error())
|
||||||
}
|
}
|
||||||
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
||||||
@ -634,8 +633,8 @@ func TestValidateCertificateSigningRequestStatusUpdate(t *testing.T) {
|
|||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
newCSR *certificates.CertificateSigningRequest
|
newCSR *capi.CertificateSigningRequest
|
||||||
oldCSR *certificates.CertificateSigningRequest
|
oldCSR *capi.CertificateSigningRequest
|
||||||
versionErrs map[string][]string
|
versionErrs map[string][]string
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
@ -760,7 +759,7 @@ func TestValidateCertificateSigningRequestStatusUpdate(t *testing.T) {
|
|||||||
for _, version := range []string{"v1", "v1beta1"} {
|
for _, version := range []string{"v1", "v1beta1"} {
|
||||||
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
||||||
gotErrs := sets.NewString()
|
gotErrs := sets.NewString()
|
||||||
for _, err := range ValidateCertificateSigningRequestStatusUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: certificates.GroupName, Version: version}) {
|
for _, err := range ValidateCertificateSigningRequestStatusUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: capi.GroupName, Version: version}) {
|
||||||
gotErrs.Insert(err.Error())
|
gotErrs.Insert(err.Error())
|
||||||
}
|
}
|
||||||
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
||||||
@ -790,8 +789,8 @@ func TestValidateCertificateSigningRequestApprovalUpdate(t *testing.T) {
|
|||||||
|
|
||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
newCSR *certificates.CertificateSigningRequest
|
newCSR *capi.CertificateSigningRequest
|
||||||
oldCSR *certificates.CertificateSigningRequest
|
oldCSR *capi.CertificateSigningRequest
|
||||||
versionErrs map[string][]string
|
versionErrs map[string][]string
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
@ -876,7 +875,7 @@ func TestValidateCertificateSigningRequestApprovalUpdate(t *testing.T) {
|
|||||||
for _, version := range []string{"v1", "v1beta1"} {
|
for _, version := range []string{"v1", "v1beta1"} {
|
||||||
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
t.Run(tt.name+"_"+version, func(t *testing.T) {
|
||||||
gotErrs := sets.NewString()
|
gotErrs := sets.NewString()
|
||||||
for _, err := range ValidateCertificateSigningRequestApprovalUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: certificates.GroupName, Version: version}) {
|
for _, err := range ValidateCertificateSigningRequestApprovalUpdate(tt.newCSR, tt.oldCSR, schema.GroupVersion{Group: capi.GroupName, Version: version}) {
|
||||||
gotErrs.Insert(err.Error())
|
gotErrs.Insert(err.Error())
|
||||||
}
|
}
|
||||||
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
wantErrs := sets.NewString(tt.versionErrs[version]...)
|
||||||
@ -904,7 +903,7 @@ func Test_validateCertificateSigningRequestOptions(t *testing.T) {
|
|||||||
name string
|
name string
|
||||||
|
|
||||||
// csr being validated
|
// csr being validated
|
||||||
csr *certificates.CertificateSigningRequest
|
csr *capi.CertificateSigningRequest
|
||||||
|
|
||||||
// options that allow the csr to pass validation
|
// options that allow the csr to pass validation
|
||||||
lenientOpts certificateValidationOptions
|
lenientOpts certificateValidationOptions
|
||||||
|
@ -109,7 +109,7 @@ func validateV1EventSeries(event *core.Event) field.ErrorList {
|
|||||||
zeroTime := time.Time{}
|
zeroTime := time.Time{}
|
||||||
if event.Series != nil {
|
if event.Series != nil {
|
||||||
if event.Series.Count < 2 {
|
if event.Series.Count < 2 {
|
||||||
allErrs = append(allErrs, field.Invalid(field.NewPath("series.count"), "", fmt.Sprintf("should be at least 2")))
|
allErrs = append(allErrs, field.Invalid(field.NewPath("series.count"), "", "should be at least 2"))
|
||||||
}
|
}
|
||||||
if event.Series.LastObservedTime.Time == zeroTime {
|
if event.Series.LastObservedTime.Time == zeroTime {
|
||||||
allErrs = append(allErrs, field.Required(field.NewPath("series.lastObservedTime"), ""))
|
allErrs = append(allErrs, field.Required(field.NewPath("series.lastObservedTime"), ""))
|
||||||
|
@ -239,8 +239,7 @@ func validateIngress(ingress *networking.Ingress, opts IngressValidationOptions,
|
|||||||
// ValidateIngressCreate validates Ingresses on create.
|
// ValidateIngressCreate validates Ingresses on create.
|
||||||
func ValidateIngressCreate(ingress *networking.Ingress, requestGV schema.GroupVersion) field.ErrorList {
|
func ValidateIngressCreate(ingress *networking.Ingress, requestGV schema.GroupVersion) field.ErrorList {
|
||||||
allErrs := field.ErrorList{}
|
allErrs := field.ErrorList{}
|
||||||
var opts IngressValidationOptions
|
opts := IngressValidationOptions{
|
||||||
opts = IngressValidationOptions{
|
|
||||||
AllowInvalidSecretName: allowInvalidSecretName(requestGV, nil),
|
AllowInvalidSecretName: allowInvalidSecretName(requestGV, nil),
|
||||||
AllowInvalidWildcardHostRule: allowInvalidWildcardHostRule(requestGV, nil),
|
AllowInvalidWildcardHostRule: allowInvalidWildcardHostRule(requestGV, nil),
|
||||||
}
|
}
|
||||||
@ -256,8 +255,7 @@ func ValidateIngressCreate(ingress *networking.Ingress, requestGV schema.GroupVe
|
|||||||
// ValidateIngressUpdate validates ingresses on update.
|
// ValidateIngressUpdate validates ingresses on update.
|
||||||
func ValidateIngressUpdate(ingress, oldIngress *networking.Ingress, requestGV schema.GroupVersion) field.ErrorList {
|
func ValidateIngressUpdate(ingress, oldIngress *networking.Ingress, requestGV schema.GroupVersion) field.ErrorList {
|
||||||
allErrs := apivalidation.ValidateObjectMetaUpdate(&ingress.ObjectMeta, &oldIngress.ObjectMeta, field.NewPath("metadata"))
|
allErrs := apivalidation.ValidateObjectMetaUpdate(&ingress.ObjectMeta, &oldIngress.ObjectMeta, field.NewPath("metadata"))
|
||||||
var opts IngressValidationOptions
|
opts := IngressValidationOptions{
|
||||||
opts = IngressValidationOptions{
|
|
||||||
AllowInvalidSecretName: allowInvalidSecretName(requestGV, oldIngress),
|
AllowInvalidSecretName: allowInvalidSecretName(requestGV, oldIngress),
|
||||||
AllowInvalidWildcardHostRule: allowInvalidWildcardHostRule(requestGV, oldIngress),
|
AllowInvalidWildcardHostRule: allowInvalidWildcardHostRule(requestGV, oldIngress),
|
||||||
}
|
}
|
||||||
|
@ -432,7 +432,7 @@ func validatePodSecurityPolicySysctls(fldPath *field.Path, sysctls []string) fie
|
|||||||
coversAll := false
|
coversAll := false
|
||||||
for i, s := range sysctls {
|
for i, s := range sysctls {
|
||||||
if len(s) == 0 {
|
if len(s) == 0 {
|
||||||
allErrs = append(allErrs, field.Invalid(fldPath.Index(i), sysctls[i], fmt.Sprintf("empty sysctl not allowed")))
|
allErrs = append(allErrs, field.Invalid(fldPath.Index(i), sysctls[i], "empty sysctl not allowed"))
|
||||||
} else if !IsValidSysctlPattern(string(s)) {
|
} else if !IsValidSysctlPattern(string(s)) {
|
||||||
allErrs = append(
|
allErrs = append(
|
||||||
allErrs,
|
allErrs,
|
||||||
@ -447,7 +447,7 @@ func validatePodSecurityPolicySysctls(fldPath *field.Path, sysctls []string) fie
|
|||||||
}
|
}
|
||||||
|
|
||||||
if coversAll && len(sysctls) > 1 {
|
if coversAll && len(sysctls) > 1 {
|
||||||
allErrs = append(allErrs, field.Forbidden(fldPath.Child("items"), fmt.Sprintf("if '*' is present, must not specify other sysctls")))
|
allErrs = append(allErrs, field.Forbidden(fldPath.Child("items"), "if '*' is present, must not specify other sysctls"))
|
||||||
}
|
}
|
||||||
|
|
||||||
return allErrs
|
return allErrs
|
||||||
|
Loading…
Reference in New Issue
Block a user