Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
3157ff02
Commit
3157ff02
authored
Aug 11, 2018
by
Di Xu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use NameIsDNSSubdomain validation from staging
parent
fbb2dfcc
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
37 additions
and
34 deletions
+37
-34
BUILD
pkg/apis/apps/validation/BUILD
+1
-0
validation.go
pkg/apis/apps/validation/validation.go
+3
-2
BUILD
pkg/apis/autoscaling/validation/BUILD
+1
-0
validation.go
pkg/apis/autoscaling/validation/validation.go
+2
-1
validation.go
pkg/apis/core/validation/validation.go
+12
-23
BUILD
pkg/apis/extensions/validation/BUILD
+1
-0
validation.go
pkg/apis/extensions/validation/validation.go
+5
-4
BUILD
pkg/apis/networking/validation/BUILD
+1
-0
validation.go
pkg/apis/networking/validation/validation.go
+2
-1
BUILD
pkg/apis/policy/validation/BUILD
+1
-0
validation.go
pkg/apis/policy/validation/validation.go
+2
-1
BUILD
pkg/apis/scheduling/validation/BUILD
+1
-0
validation.go
pkg/apis/scheduling/validation/validation.go
+2
-1
BUILD
pkg/apis/settings/validation/BUILD
+1
-0
validation.go
pkg/apis/settings/validation/validation.go
+2
-1
No files found.
pkg/apis/apps/validation/BUILD
View file @
3157ff02
...
...
@@ -15,6 +15,7 @@ go_library(
"//pkg/apis/core:go_default_library",
"//pkg/apis/core/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
...
...
pkg/apis/apps/validation/validation.go
View file @
3157ff02
...
...
@@ -20,6 +20,7 @@ import (
"fmt"
apiequality
"k8s.io/apimachinery/pkg/api/equality"
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
unversionedvalidation
"k8s.io/apimachinery/pkg/apis/meta/v1/validation"
"k8s.io/apimachinery/pkg/labels"
...
...
@@ -36,7 +37,7 @@ func ValidateStatefulSetName(name string, prefix bool) []string {
// TODO: Validate that there's name for the suffix inserted by the pods.
// Currently this is just "-index". In the future we may allow a user
// specified list of suffixes and we need to validate the longest one.
return
apivalidation
.
NameIsDNSSubdomain
(
name
,
prefix
)
return
api
machinery
validation
.
NameIsDNSSubdomain
(
name
,
prefix
)
}
// Validates the given template and ensures that it is in accordance with the desired selector.
...
...
@@ -208,7 +209,7 @@ func ValidateStatefulSetStatusUpdate(statefulSet, oldStatefulSet *apps.StatefulS
// ValidateControllerRevisionName can be used to check whether the given ControllerRevision name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateControllerRevisionName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidateControllerRevisionName
=
api
machinery
validation
.
NameIsDNSSubdomain
// ValidateControllerRevision collects errors for the fields of state and returns those errors as an ErrorList. If the
// returned list is empty, state is valid. Validation is performed to ensure that state is a valid ObjectMeta, its name
...
...
pkg/apis/autoscaling/validation/BUILD
View file @
3157ff02
...
...
@@ -13,6 +13,7 @@ go_library(
deps = [
"//pkg/apis/autoscaling:go_default_library",
"//pkg/apis/core/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation/path:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
...
...
pkg/apis/autoscaling/validation/validation.go
View file @
3157ff02
...
...
@@ -19,6 +19,7 @@ package validation
import
(
"strings"
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
pathvalidation
"k8s.io/apimachinery/pkg/api/validation/path"
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/util/validation/field"
...
...
@@ -28,7 +29,7 @@ import (
func
ValidateScale
(
scale
*
autoscaling
.
Scale
)
field
.
ErrorList
{
allErrs
:=
field
.
ErrorList
{}
allErrs
=
append
(
allErrs
,
apivalidation
.
ValidateObjectMeta
(
&
scale
.
ObjectMeta
,
true
,
apivalidation
.
NameIsDNSSubdomain
,
field
.
NewPath
(
"metadata"
))
...
)
allErrs
=
append
(
allErrs
,
apivalidation
.
ValidateObjectMeta
(
&
scale
.
ObjectMeta
,
true
,
api
machinery
validation
.
NameIsDNSSubdomain
,
field
.
NewPath
(
"metadata"
))
...
)
if
scale
.
Spec
.
Replicas
<
0
{
allErrs
=
append
(
allErrs
,
field
.
Invalid
(
field
.
NewPath
(
"spec"
,
"replicas"
),
scale
.
Spec
.
Replicas
,
"must be greater than or equal to 0"
))
...
...
pkg/apis/core/validation/validation.go
View file @
3157ff02
...
...
@@ -195,23 +195,23 @@ type ValidateNameFunc apimachineryvalidation.ValidateNameFunc
// ValidatePodName can be used to check whether the given pod name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidatePodName
=
NameIsDNSSubdomain
var
ValidatePodName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateReplicationControllerName can be used to check whether the given replication
// controller name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateReplicationControllerName
=
NameIsDNSSubdomain
var
ValidateReplicationControllerName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateServiceName can be used to check whether the given service name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateServiceName
=
NameIsDNS1035Label
var
ValidateServiceName
=
apimachineryvalidation
.
NameIsDNS1035Label
// ValidateNodeName can be used to check whether the given node name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateNodeName
=
NameIsDNSSubdomain
var
ValidateNodeName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateNamespaceName can be used to check whether the given namespace name is valid.
// Prefix indicates this name will be used as part of generation, in which case
...
...
@@ -221,18 +221,18 @@ var ValidateNamespaceName = apimachineryvalidation.ValidateNamespaceName
// ValidateLimitRangeName can be used to check whether the given limit range name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateLimitRangeName
=
NameIsDNSSubdomain
var
ValidateLimitRangeName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateResourceQuotaName can be used to check whether the given
// resource quota name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateResourceQuotaName
=
NameIsDNSSubdomain
var
ValidateResourceQuotaName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateSecretName can be used to check whether the given secret name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateSecretName
=
NameIsDNSSubdomain
var
ValidateSecretName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateServiceAccountName can be used to check whether the given service account name is valid.
// Prefix indicates this name will be used as part of generation, in which case
...
...
@@ -242,7 +242,7 @@ var ValidateServiceAccountName = apimachineryvalidation.ValidateServiceAccountNa
// ValidateEndpointsName can be used to check whether the given endpoints name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateEndpointsName
=
NameIsDNSSubdomain
var
ValidateEndpointsName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateClusterName can be used to check whether the given cluster name is valid.
var
ValidateClusterName
=
apimachineryvalidation
.
ValidateClusterName
...
...
@@ -250,22 +250,11 @@ var ValidateClusterName = apimachineryvalidation.ValidateClusterName
// ValidateClassName can be used to check whether the given class name is valid.
// It is defined here to avoid import cycle between pkg/apis/storage/validation
// (where it should be) and this file.
var
ValidateClassName
=
NameIsDNSSubdomain
var
ValidateClassName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidatePiorityClassName can be used to check whether the given priority
// class name is valid.
var
ValidatePriorityClassName
=
NameIsDNSSubdomain
// TODO update all references to these functions to point to the apimachineryvalidation ones
// NameIsDNSSubdomain is a ValidateNameFunc for names that must be a DNS subdomain.
func
NameIsDNSSubdomain
(
name
string
,
prefix
bool
)
[]
string
{
return
apimachineryvalidation
.
NameIsDNSSubdomain
(
name
,
prefix
)
}
// NameIsDNS1035Label is a ValidateNameFunc for names that must be a DNS 952 label.
func
NameIsDNS1035Label
(
name
string
,
prefix
bool
)
[]
string
{
return
apimachineryvalidation
.
NameIsDNS1035Label
(
name
,
prefix
)
}
var
ValidatePriorityClassName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// Validates that given value is not negative.
func
ValidateNonnegativeField
(
value
int64
,
fldPath
*
field
.
Path
)
field
.
ErrorList
{
...
...
@@ -1493,7 +1482,7 @@ func validateCSIPersistentVolumeSource(csi *core.CSIPersistentVolumeSource, fldP
// ValidatePersistentVolumeName checks that a name is appropriate for a
// PersistentVolumeName object.
var
ValidatePersistentVolumeName
=
NameIsDNSSubdomain
var
ValidatePersistentVolumeName
=
apimachineryvalidation
.
NameIsDNSSubdomain
var
supportedAccessModes
=
sets
.
NewString
(
string
(
core
.
ReadWriteOnce
),
string
(
core
.
ReadOnlyMany
),
string
(
core
.
ReadWriteMany
))
...
...
@@ -4668,7 +4657,7 @@ func ValidateSecretUpdate(newSecret, oldSecret *core.Secret) field.ErrorList {
// ValidateConfigMapName can be used to check whether the given ConfigMap name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateConfigMapName
=
NameIsDNSSubdomain
var
ValidateConfigMapName
=
apimachineryvalidation
.
NameIsDNSSubdomain
// ValidateConfigMap tests whether required fields in the ConfigMap are set.
func
ValidateConfigMap
(
cfg
*
core
.
ConfigMap
)
field
.
ErrorList
{
...
...
pkg/apis/extensions/validation/BUILD
View file @
3157ff02
...
...
@@ -15,6 +15,7 @@ go_library(
"//pkg/apis/core/validation:go_default_library",
"//pkg/apis/extensions:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/equality:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
...
...
pkg/apis/extensions/validation/validation.go
View file @
3157ff02
...
...
@@ -23,6 +23,7 @@ import (
"strings"
apiequality
"k8s.io/apimachinery/pkg/api/equality"
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
unversionedvalidation
"k8s.io/apimachinery/pkg/apis/meta/v1/validation"
"k8s.io/apimachinery/pkg/labels"
...
...
@@ -167,10 +168,10 @@ func ValidateDaemonSetUpdateStrategy(strategy *extensions.DaemonSetUpdateStrateg
// ValidateDaemonSetName can be used to check whether the given daemon set name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateDaemonSetName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidateDaemonSetName
=
api
machinery
validation
.
NameIsDNSSubdomain
// Validates that the given name can be used as a deployment name.
var
ValidateDeploymentName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidateDeploymentName
=
api
machinery
validation
.
NameIsDNSSubdomain
func
ValidatePositiveIntOrPercent
(
intOrPercent
intstr
.
IntOrString
,
fldPath
*
field
.
Path
)
field
.
ErrorList
{
allErrs
:=
field
.
ErrorList
{}
...
...
@@ -367,7 +368,7 @@ func ValidateIngress(ingress *extensions.Ingress) field.ErrorList {
}
// ValidateIngressName validates that the given name can be used as an Ingress name.
var
ValidateIngressName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidateIngressName
=
api
machinery
validation
.
NameIsDNSSubdomain
func
validateIngressTLS
(
spec
*
extensions
.
IngressSpec
,
fldPath
*
field
.
Path
)
field
.
ErrorList
{
allErrs
:=
field
.
ErrorList
{}
...
...
@@ -506,7 +507,7 @@ func validateIngressBackend(backend *extensions.IngressBackend, fldPath *field.P
// name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidateReplicaSetName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidateReplicaSetName
=
api
machinery
validation
.
NameIsDNSSubdomain
// ValidateReplicaSet tests if required fields in the ReplicaSet are set.
func
ValidateReplicaSet
(
rs
*
extensions
.
ReplicaSet
)
field
.
ErrorList
{
...
...
pkg/apis/networking/validation/BUILD
View file @
3157ff02
...
...
@@ -26,6 +26,7 @@ go_library(
"//pkg/apis/core:go_default_library",
"//pkg/apis/core/validation:go_default_library",
"//pkg/apis/networking:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
...
...
pkg/apis/networking/validation/validation.go
View file @
3157ff02
...
...
@@ -17,6 +17,7 @@ limitations under the License.
package
validation
import
(
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
unversionedvalidation
"k8s.io/apimachinery/pkg/apis/meta/v1/validation"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/apimachinery/pkg/util/sets"
...
...
@@ -30,7 +31,7 @@ import (
// ValidateNetworkPolicyName can be used to check whether the given networkpolicy
// name is valid.
func
ValidateNetworkPolicyName
(
name
string
,
prefix
bool
)
[]
string
{
return
apivalidation
.
NameIsDNSSubdomain
(
name
,
prefix
)
return
api
machinery
validation
.
NameIsDNSSubdomain
(
name
,
prefix
)
}
// ValidateNetworkPolicyPort validates a NetworkPolicyPort
...
...
pkg/apis/policy/validation/BUILD
View file @
3157ff02
...
...
@@ -19,6 +19,7 @@ go_library(
"//pkg/security/apparmor:go_default_library",
"//pkg/security/podsecuritypolicy/seccomp:go_default_library",
"//pkg/security/podsecuritypolicy/util:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
...
...
pkg/apis/policy/validation/validation.go
View file @
3157ff02
...
...
@@ -23,6 +23,7 @@ import (
"regexp"
"strings"
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
unversionedvalidation
"k8s.io/apimachinery/pkg/apis/meta/v1/validation"
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/util/validation/field"
...
...
@@ -94,7 +95,7 @@ func ValidatePodDisruptionBudgetStatus(status policy.PodDisruptionBudgetStatus,
// pod security policy name is valid.
// Prefix indicates this name will be used as part of generation, in which case
// trailing dashes are allowed.
var
ValidatePodSecurityPolicyName
=
apivalidation
.
NameIsDNSSubdomain
var
ValidatePodSecurityPolicyName
=
api
machinery
validation
.
NameIsDNSSubdomain
func
ValidatePodSecurityPolicy
(
psp
*
policy
.
PodSecurityPolicy
)
field
.
ErrorList
{
allErrs
:=
field
.
ErrorList
{}
...
...
pkg/apis/scheduling/validation/BUILD
View file @
3157ff02
...
...
@@ -24,6 +24,7 @@ go_library(
deps = [
"//pkg/apis/core/validation:go_default_library",
"//pkg/apis/scheduling:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
],
)
...
...
pkg/apis/scheduling/validation/validation.go
View file @
3157ff02
...
...
@@ -20,6 +20,7 @@ import (
"fmt"
"strings"
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
"k8s.io/apimachinery/pkg/util/validation/field"
apivalidation
"k8s.io/kubernetes/pkg/apis/core/validation"
"k8s.io/kubernetes/pkg/apis/scheduling"
...
...
@@ -29,7 +30,7 @@ import (
// set correctly.
func
ValidatePriorityClass
(
pc
*
scheduling
.
PriorityClass
)
field
.
ErrorList
{
allErrs
:=
field
.
ErrorList
{}
allErrs
=
append
(
allErrs
,
apivalidation
.
ValidateObjectMeta
(
&
pc
.
ObjectMeta
,
false
,
apivalidation
.
NameIsDNSSubdomain
,
field
.
NewPath
(
"metadata"
))
...
)
allErrs
=
append
(
allErrs
,
apivalidation
.
ValidateObjectMeta
(
&
pc
.
ObjectMeta
,
false
,
api
machinery
validation
.
NameIsDNSSubdomain
,
field
.
NewPath
(
"metadata"
))
...
)
// If the priorityClass starts with a system prefix, it must be one of the
// predefined system priority classes.
if
strings
.
HasPrefix
(
pc
.
Name
,
scheduling
.
SystemPriorityClassPrefix
)
{
...
...
pkg/apis/settings/validation/BUILD
View file @
3157ff02
...
...
@@ -24,6 +24,7 @@ go_library(
deps = [
"//pkg/apis/core/validation:go_default_library",
"//pkg/apis/settings:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/validation:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
],
...
...
pkg/apis/settings/validation/validation.go
View file @
3157ff02
...
...
@@ -17,6 +17,7 @@ limitations under the License.
package
validation
import
(
apimachineryvalidation
"k8s.io/apimachinery/pkg/api/validation"
unversionedvalidation
"k8s.io/apimachinery/pkg/apis/meta/v1/validation"
"k8s.io/apimachinery/pkg/util/validation/field"
apivalidation
"k8s.io/kubernetes/pkg/apis/core/validation"
...
...
@@ -30,7 +31,7 @@ func ValidatePodPresetName(name string, prefix bool) []string {
// TODO: Validate that there's name for the suffix inserted by the pods.
// Currently this is just "-index". In the future we may allow a user
// specified list of suffixes and we need to validate the longest one.
return
apivalidation
.
NameIsDNSSubdomain
(
name
,
prefix
)
return
api
machinery
validation
.
NameIsDNSSubdomain
(
name
,
prefix
)
}
// ValidatePodPresetSpec tests if required fields in the PodPreset spec are set.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment