add maxLength constraint for CRD

This commit is contained in:
Felix Kunde 2020-10-15 13:55:13 +02:00
parent d15f2d3392
commit f212ab7891
3 changed files with 30 additions and 1 deletions

View File

@ -57,6 +57,7 @@ spec:
required:
- kind
- apiVersion
- metadata
- spec
properties:
kind:
@ -67,6 +68,14 @@ spec:
type: string
enum:
- acid.zalan.do/v1
metadata:
type: object
required:
- name
properties:
name:
type: string
maxLength: 50
spec:
type: object
required:

View File

@ -53,6 +53,7 @@ spec:
required:
- kind
- apiVersion
- metadata
- spec
properties:
kind:
@ -63,6 +64,14 @@ spec:
type: string
enum:
- acid.zalan.do/v1
metadata:
type: object
required:
- name
properties:
name:
type: string
maxLength: 50
spec:
type: object
required:

View File

@ -107,12 +107,13 @@ var min0 = 0.0
var min1 = 1.0
var min2 = 2.0
var minDisable = -1.0
var maxLength = int64(50)
// PostgresCRDResourceValidation to check applied manifest parameters
var PostgresCRDResourceValidation = apiextv1beta1.CustomResourceValidation{
OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{
Type: "object",
Required: []string{"kind", "apiVersion", "spec"},
Required: []string{"kind", "apiVersion", "metadata", "spec"},
Properties: map[string]apiextv1beta1.JSONSchemaProps{
"kind": {
Type: "string",
@ -130,6 +131,16 @@ var PostgresCRDResourceValidation = apiextv1beta1.CustomResourceValidation{
},
},
},
"metadata": {
Type: "object",
Required: []string{"name"},
Properties: map[string]apiextv1beta1.JSONSchemaProps{
"name": {
Type: "string",
MaxLength: &maxLength,
},
},
},
"spec": {
Type: "object",
Required: []string{"numberOfInstances", "teamId", "postgresql", "volume"},