diff --git a/.landscaper/landscaper-instance/blueprint/landscaper/deploy-execution.yaml b/.landscaper/landscaper-instance/blueprint/landscaper/deploy-execution.yaml index dd4c84687..d9f40b7eb 100644 --- a/.landscaper/landscaper-instance/blueprint/landscaper/deploy-execution.yaml +++ b/.landscaper/landscaper-instance/blueprint/landscaper/deploy-execution.yaml @@ -39,16 +39,22 @@ deployItems: landscaper: verbosity: {{ .imports.landscaperConfig.landscaper.verbosity | default "info" }} + + {{- if (dig "landscaperConfig" "landscaper" "controllers" false .imports) }} + controllers: + {{- toYaml .imports.landscaperConfig.landscaper.controllers | nindent 12 }} + {{- end }} + crdManagement: deployCrd: true forceUpdate: true registryConfig: {{ toYaml .imports.registryConfig | indent 12 }} - {{ if .imports.landscaperConfig.k8sClientSettings }} + {{- if (dig "landscaperConfig" "landscaper" "k8sClientSettings" false .imports) }} k8sClientSettings: -{{ toYaml .imports.landscaperConfig.k8sClientSettings | indent 12 }} - {{ end }} + {{- toYaml .imports.landscaperConfig.landscaper.k8sClientSettings | nindent 12 }} + {{- end }} deployers: [] @@ -59,6 +65,11 @@ deployItems: deployersConfig: {} + {{- if (dig "landscaperConfig" "landscaper" "deployItemTimeouts" false .imports) }} + deployItemTimeouts: + {{- toYaml .imports.landscaperConfig.landscaper.deployItemTimeouts | nindent 12 }} + {{- end }} + healthCheck: name: landscaper-{{ .imports.hostingClusterNamespace }} additionalDeployments: @@ -120,6 +131,24 @@ deployItems: dns: class: garden + {{- if (dig "landscaperConfig" "webhooksServer" "resources" false .imports) }} + resources: + {{- toYaml .imports.landscaperConfig.webhooksServer.resources | nindent 12 }} + {{- end }} + + {{- if (dig "landscaperConfig" "webhooksServer" "hpa" false .imports) }} + hpa: + {{- if (dig "landscaperConfig" "webhooksServer" "hpa" "maxReplicas" false .imports) }} + maxReplicas: {{ .imports.landscaperConfig.webhooksServer.hpa.maxReplicas }} + {{- end }} + {{- if (dig "landscaperConfig" "webhooksServer" "hpa" "averageCpuUtilization" false .imports) }} + averageCpuUtilization: {{ .imports.landscaperConfig.webhooksServer.hpa.averageCpuUtilization }} + {{- end }} + {{- if (dig "landscaperConfig" "webhooksServer" "hpa" "averageMemoryUtilization" false .imports) }} + averageMemoryUtilization: {{ .imports.landscaperConfig.webhooksServer.hpa.averageMemoryUtilization }} + {{- end }} + {{- end }} + service: type: ClusterIP port: 80 @@ -133,10 +162,28 @@ deployItems: webhooksServer: name: landscaper-webhooks + {{- if (dig "landscaperConfig" "resources" false .imports) }} resources: - requests: - cpu: 100m - memory: 100Mi + {{- toYaml .imports.landscaperConfig.resources | nindent 10 }} + {{- end }} + + {{- if (dig "landscaperConfig" "resourcesMain" false .imports) }} + resourcesMain: + {{- toYaml .imports.landscaperConfig.resourcesMain | nindent 10 }} + {{- end }} + + {{- if (dig "landscaperConfig" "hpaMain" false .imports) }} + hpaMain: + {{- if (dig "landscaperConfig" "hpaMain" "maxReplicas" false .imports) }} + maxReplicas: {{ .imports.landscaperConfig.hpaMain.maxReplicas }} + {{- end }} + {{- if (dig "landscaperConfig" "hpaMain" "averageCpuUtilization" false .imports) }} + averageCpuUtilization: {{ .imports.landscaperConfig.hpaMain.averageCpuUtilization }} + {{- end }} + {{- if (dig "landscaperConfig" "hpaMain" "averageMemoryUtilization" false .imports) }} + averageMemoryUtilization: {{ .imports.landscaperConfig.hpaMain.averageMemoryUtilization }} + {{- end }} + {{- end }} {{ if has "helm" .imports.landscaperConfig.deployers }} - name: helm-deployer @@ -171,14 +218,17 @@ deployItems: deployer: verbosityLevel: {{ .imports.landscaperConfig.landscaper.verbosity | default "info" }} + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "deployer" "controller" false .imports) }} controller: - workers: 30 + {{- toYaml .imports.landscaperConfig.deployersConfig.helm.deployer.controller | nindent 12 }} + {{- end }} landscaperClusterKubeconfig: kubeconfig: | {{ .imports.landscaperControllerKubeconfigYaml | indent 14 }} + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "deployer" "k8sClientSettings" false .imports) }} k8sClientSettings: -{{ toYaml .imports.landscaperConfig.deployersConfig.helm.deployer.k8sClientSettings | indent 14 }} + {{- toYaml .imports.landscaperConfig.deployersConfig.helm.deployer.k8sClientSettings | nindent 12 }} {{- end }} image: @@ -189,12 +239,23 @@ deployItems: tag: {{ $imageTag }} pullPolicy: IfNotPresent - replicaCount: 1 - + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "resources" false .imports) }} resources: - requests: - cpu: 300m - memory: 300Mi + {{- toYaml .imports.landscaperConfig.deployersConfig.helm.resources | nindent 10 }} + {{- end }} + + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "hpa" false .imports) }} + hpa: + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "hpa" "maxReplicas" false .imports) }} + maxReplicas: {{ .imports.landscaperConfig.deployersConfig.helm.hpa.maxReplicas }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "hpa" "averageCpuUtilization" false .imports) }} + averageCpuUtilization: {{ .imports.landscaperConfig.deployersConfig.helm.hpa.averageCpuUtilization }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "helm" "hpa" "averageMemoryUtilization" false .imports) }} + averageMemoryUtilization: {{ .imports.landscaperConfig.deployersConfig.helm.hpa.averageMemoryUtilization }} + {{- end }} + {{- end }} {{ end }} {{ if has "manifest" .imports.landscaperConfig.deployers }} @@ -230,14 +291,17 @@ deployItems: deployer: verbosityLevel: {{ .imports.landscaperConfig.landscaper.verbosity | default "info" }} + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "deployer" "controller" false .imports) }} controller: - workers: 30 + {{- toYaml .imports.landscaperConfig.deployersConfig.manifest.deployer.controller | nindent 12 }} + {{- end }} landscaperClusterKubeconfig: kubeconfig: | {{ .imports.landscaperControllerKubeconfigYaml | indent 14 }} + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "deployer" "k8sClientSettings" false .imports) }} k8sClientSettings: -{{ toYaml .imports.landscaperConfig.deployersConfig.manifest.deployer.k8sClientSettings | indent 14 }} + {{- toYaml .imports.landscaperConfig.deployersConfig.manifest.deployer.k8sClientSettings | nindent 12 }} {{- end }} image: @@ -248,12 +312,23 @@ deployItems: tag: {{ $imageTag }} pullPolicy: IfNotPresent - replicaCount: 1 - + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "resources" false .imports) }} resources: - requests: - cpu: 10m - memory: 100Mi + {{- toYaml .imports.landscaperConfig.deployersConfig.manifest.resources | nindent 10 }} + {{- end }} + + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "hpa" false .imports) }} + hpa: + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "hpa" "maxReplicas" false .imports) }} + maxReplicas: {{ .imports.landscaperConfig.deployersConfig.manifest.hpa.maxReplicas }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "hpa" "averageCpuUtilization" false .imports) }} + averageCpuUtilization: {{ .imports.landscaperConfig.deployersConfig.manifest.hpa.averageCpuUtilization }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "manifest" "hpa" "averageMemoryUtilization" false .imports) }} + averageMemoryUtilization: {{ .imports.landscaperConfig.deployersConfig.manifest.hpa.averageMemoryUtilization }} + {{- end }} + {{- end }} {{ end }} {{ if has "container" .imports.landscaperConfig.deployers }} @@ -289,14 +364,17 @@ deployItems: deployer: verbosityLevel: {{ .imports.landscaperConfig.landscaper.verbosity | default "info" }} + {{- if (dig "landscaperConfig" "deployersConfig" "container" "deployer" "controller" false .imports) }} controller: - workers: 30 + {{- toYaml .imports.landscaperConfig.deployersConfig.container.deployer.controller | nindent 12 }} + {{- end }} landscaperClusterKubeconfig: kubeconfig: | {{ .imports.landscaperControllerKubeconfigYaml | indent 14 }} + {{- if (dig "landscaperConfig" "deployersConfig" "container" "deployer" "k8sClientSettings" false .imports) }} k8sClientSettings: -{{ toYaml .imports.landscaperConfig.deployersConfig.container.deployer.k8sClientSettings | indent 14 }} + {{- toYaml .imports.landscaperConfig.deployersConfig.container.deployer.k8sClientSettings | nindent 12 }} {{- end }} image: @@ -307,10 +385,21 @@ deployItems: tag: {{ $imageTag }} pullPolicy: IfNotPresent - replicaCount: 1 - + {{- if (dig "landscaperConfig" "deployersConfig" "container" "resources" false .imports) }} resources: - requests: - cpu: 10m - memory: 100Mi + {{- toYaml .imports.landscaperConfig.deployersConfig.container.resources | nindent 10 }} + {{- end }} + + {{- if (dig "landscaperConfig" "deployersConfig" "container" "hpa" false .imports) }} + hpa: + {{- if (dig "landscaperConfig" "deployersConfig" "container" "hpa" "maxReplicas" false .imports) }} + maxReplicas: {{ .imports.landscaperConfig.deployersConfig.container.hpa.maxReplicas }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "container" "hpa" "averageCpuUtilization" false .imports) }} + averageCpuUtilization: {{ .imports.landscaperConfig.deployersConfig.container.hpa.averageCpuUtilization }} + {{- end }} + {{- if (dig "landscaperConfig" "deployersConfig" "container" "hpa" "averageMemoryUtilization" false .imports) }} + averageMemoryUtilization: {{ .imports.landscaperConfig.deployersConfig.container.hpa.averageMemoryUtilization }} + {{- end }} + {{- end }} {{ end }} diff --git a/.landscaper/landscaper-instance/definition/landscaper-configuration.json b/.landscaper/landscaper-instance/definition/landscaper-configuration.json index 1b7931382..6955e237a 100644 --- a/.landscaper/landscaper-instance/definition/landscaper-configuration.json +++ b/.landscaper/landscaper-instance/definition/landscaper-configuration.json @@ -6,11 +6,20 @@ "type": "object", "properties": { "landscaper": { - "$ref": "#definitions/landscaperConfig" + "$ref": "#definitions/landscaper" }, "webhooksServer": { "$ref": "#definitions/webhooksConfig" }, + "resources": { + "type": "object" + }, + "resourcesMain": { + "type": "object" + }, + "hpaMain": { + "type": "object" + }, "deployers": { "type": "array", "items": { @@ -19,13 +28,10 @@ }, "deployersConfig": { "$ref": "#definitions/deployerConfig" - }, - "k8sClientSettings": { - "type": "object" } }, "definitions": { - "landscaperConfig" : { + "landscaper" : { "properties": { "verbosity": { "type": "string", @@ -35,14 +41,17 @@ "type:": "integer", "format": "int32" }, - "resources": { - "$ref": "#definitions/landscaperResources" + "controllers": { + "type": "object" + }, + "k8sClientSettings": { + "type": "object" + }, + "deployItemTimeouts": { + "type": "object" } } }, - "landscaperResources": { - "properties": {} - }, "webhooksConfig": { "properties": { "servicePort": { diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/types_shared.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/types_shared.go index 5132990e2..b1e2a0044 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/types_shared.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/types_shared.go @@ -71,8 +71,87 @@ type Error struct { // LandscaperConfiguration contains the configuration for a landscaper service deployment. type LandscaperConfiguration struct { + // +optional + Landscaper *Landscaper `json:"landscaper,omitempty"` + // Resources configures the resources of the "central" landscaper pod, i.e. the pod responsible for crds creation, + // deployer management, context controller. + // +optional + Resources *Resources `json:"resources,omitempty"` + // ResourcesMain configures the resources of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + ResourcesMain *Resources `json:"resourcesMain,omitempty"` + // HPAMain configures the horizontal pod autoscaling of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + HPAMain *HPA `json:"hpaMain,omitempty"` // Deployers is the list of deployers that are getting installed alongside with this Instance. Deployers []string `json:"deployers"` + // DeployersConfig specifies the configuration for the landscaper standard deployers. + // +optional + DeployersConfig map[string]*DeployerConfig `json:"deployersConfig,omitempty"` +} + +type Landscaper struct { + Controllers *Controllers `json:"controllers,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` + DeployItemTimeouts *DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` +} + +// Controllers specifies the config for the "main" landscaper controllers, i.e. the installation and execution controller. +type Controllers struct { + Installations *Controller `json:"installations,omitempty"` + Executions *Controller `json:"executions,omitempty"` +} + +// Controller specifies the config for a landscaper controller. +type Controller struct { + Workers int32 `json:"workers,omitempty"` +} + +// K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster. +type K8SClientSettings struct { + HostClient *K8SClientLimits `json:"hostClient,omitempty"` + ResourceClient *K8SClientLimits `json:"resourceClient,omitempty"` +} + +// K8SClientLimits specifies the settings for a k8s client. +type K8SClientLimits struct { + Burst int32 `json:"burst,omitempty"` + QPS int32 `json:"qps,omitempty"` +} + +// DeployItemTimeouts configures the timeout controller. +type DeployItemTimeouts struct { + Pickup string `json:"pickup,omitempty"` + ProgressingDefault string `json:"progressingDefault,omitempty"` +} + +// DeployerConfig configures a deployer. +type DeployerConfig struct { + Deployer *Deployer `json:"deployer,omitempty"` + Resources *Resources `json:"resources,omitempty"` + HPA *HPA `json:"hpa,omitempty"` +} + +type Deployer struct { + Controller *Controller `json:"controller,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` +} + +// Resources configures the resources of pods (requested cpu and memory) +type Resources struct { + Requests ResourceRequests `json:"requests,omitempty"` +} + +type ResourceRequests struct { + CPU string `json:"cpu,omitempty"` + Memory string `json:"memory,omitempty"` +} + +// HPA configures the horizontal pod autoscaling of pods. +type HPA struct { + MaxReplicas int32 `json:"maxReplicas,omitempty"` + AverageMemoryUtilization int32 `json:"averageMemoryUtilization,omitempty"` + AverageCpuUtilization int32 `json:"averageCpuUtilization,omitempty"` } // LandscaperServiceComponent defines the landscaper service component that is being used. diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/types_shared.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/types_shared.go index 93f2f9628..8580ab442 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/types_shared.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/types_shared.go @@ -71,8 +71,87 @@ type Error struct { // LandscaperConfiguration contains the configuration for a landscaper service deployment. type LandscaperConfiguration struct { + // +optional + Landscaper *Landscaper `json:"landscaper,omitempty"` + // Resources configures the resources of the "central" landscaper pod, i.e. the pod responsible for crds creation, + // deployer management, context controller. + // +optional + Resources *Resources `json:"resources,omitempty"` + // ResourcesMain configures the resources of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + ResourcesMain *Resources `json:"resourcesMain,omitempty"` + // HPAMain configures the horizontal pod autoscaling of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + HPAMain *HPA `json:"hpaMain,omitempty"` // Deployers is the list of deployers that are getting installed alongside with this Instance. Deployers []string `json:"deployers"` + // DeployersConfig specifies the configuration for the landscaper standard deployers. + // +optional + DeployersConfig map[string]*DeployerConfig `json:"deployersConfig,omitempty"` +} + +type Landscaper struct { + Controllers *Controllers `json:"controllers,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` + DeployItemTimeouts *DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` +} + +// Controllers specifies the config for the "main" landscaper controllers, i.e. the installation and execution controller. +type Controllers struct { + Installations *Controller `json:"installations,omitempty"` + Executions *Controller `json:"executions,omitempty"` +} + +// Controller specifies the config for a landscaper controller. +type Controller struct { + Workers int32 `json:"workers,omitempty"` +} + +// K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster. +type K8SClientSettings struct { + HostClient *K8SClientLimits `json:"hostClient,omitempty"` + ResourceClient *K8SClientLimits `json:"resourceClient,omitempty"` +} + +// K8SClientLimits specifies the settings for a k8s client. +type K8SClientLimits struct { + Burst int32 `json:"burst,omitempty"` + QPS int32 `json:"qps,omitempty"` +} + +// DeployItemTimeouts configures the timeout controller. +type DeployItemTimeouts struct { + Pickup string `json:"pickup,omitempty"` + ProgressingDefault string `json:"progressingDefault,omitempty"` +} + +// DeployerConfig configures a deployer. +type DeployerConfig struct { + Deployer *Deployer `json:"deployer,omitempty"` + Resources *Resources `json:"resources,omitempty"` + HPA *HPA `json:"hpa,omitempty"` +} + +type Deployer struct { + Controller *Controller `json:"controller,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` +} + +// Resources configures the resources of pods (requested cpu and memory) +type Resources struct { + Requests ResourceRequests `json:"requests,omitempty"` +} + +type ResourceRequests struct { + CPU string `json:"cpu,omitempty"` + Memory string `json:"memory,omitempty"` +} + +// HPA configures the horizontal pod autoscaling of pods. +type HPA struct { + MaxReplicas int32 `json:"maxReplicas,omitempty"` + AverageMemoryUtilization int32 `json:"averageMemoryUtilization,omitempty"` + AverageCpuUtilization int32 `json:"averageCpuUtilization,omitempty"` } // LandscaperServiceComponent defines the landscaper service component that is being used. diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.conversion.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.conversion.go index 5a64e72d9..c5673b4d4 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.conversion.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.conversion.go @@ -86,6 +86,56 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*Controller)(nil), (*core.Controller)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Controller_To_core_Controller(a.(*Controller), b.(*core.Controller), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Controller)(nil), (*Controller)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Controller_To_v1alpha1_Controller(a.(*core.Controller), b.(*Controller), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Controllers)(nil), (*core.Controllers)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Controllers_To_core_Controllers(a.(*Controllers), b.(*core.Controllers), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Controllers)(nil), (*Controllers)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Controllers_To_v1alpha1_Controllers(a.(*core.Controllers), b.(*Controllers), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*DeployItemTimeouts)(nil), (*core.DeployItemTimeouts)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(a.(*DeployItemTimeouts), b.(*core.DeployItemTimeouts), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.DeployItemTimeouts)(nil), (*DeployItemTimeouts)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(a.(*core.DeployItemTimeouts), b.(*DeployItemTimeouts), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Deployer)(nil), (*core.Deployer)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Deployer_To_core_Deployer(a.(*Deployer), b.(*core.Deployer), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Deployer)(nil), (*Deployer)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Deployer_To_v1alpha1_Deployer(a.(*core.Deployer), b.(*Deployer), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*DeployerConfig)(nil), (*core.DeployerConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig(a.(*DeployerConfig), b.(*core.DeployerConfig), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.DeployerConfig)(nil), (*DeployerConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig(a.(*core.DeployerConfig), b.(*DeployerConfig), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*Error)(nil), (*core.Error)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_Error_To_core_Error(a.(*Error), b.(*core.Error), scope) }); err != nil { @@ -96,6 +146,16 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*HPA)(nil), (*core.HPA)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_HPA_To_core_HPA(a.(*HPA), b.(*core.HPA), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.HPA)(nil), (*HPA)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_HPA_To_v1alpha1_HPA(a.(*core.HPA), b.(*HPA), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*HighAvailabilityConfig)(nil), (*core.HighAvailabilityConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_HighAvailabilityConfig_To_core_HighAvailabilityConfig(a.(*HighAvailabilityConfig), b.(*core.HighAvailabilityConfig), scope) }); err != nil { @@ -146,6 +206,36 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*K8SClientLimits)(nil), (*core.K8SClientLimits)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(a.(*K8SClientLimits), b.(*core.K8SClientLimits), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.K8SClientLimits)(nil), (*K8SClientLimits)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(a.(*core.K8SClientLimits), b.(*K8SClientLimits), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*K8SClientSettings)(nil), (*core.K8SClientSettings)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(a.(*K8SClientSettings), b.(*core.K8SClientSettings), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.K8SClientSettings)(nil), (*K8SClientSettings)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(a.(*core.K8SClientSettings), b.(*K8SClientSettings), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Landscaper)(nil), (*core.Landscaper)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Landscaper_To_core_Landscaper(a.(*Landscaper), b.(*core.Landscaper), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Landscaper)(nil), (*Landscaper)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Landscaper_To_v1alpha1_Landscaper(a.(*core.Landscaper), b.(*Landscaper), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*LandscaperConfiguration)(nil), (*core.LandscaperConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(a.(*LandscaperConfiguration), b.(*core.LandscaperConfiguration), scope) }); err != nil { @@ -266,6 +356,26 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*ResourceRequests)(nil), (*core.ResourceRequests)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(a.(*ResourceRequests), b.(*core.ResourceRequests), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.ResourceRequests)(nil), (*ResourceRequests)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(a.(*core.ResourceRequests), b.(*ResourceRequests), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Resources)(nil), (*core.Resources)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Resources_To_core_Resources(a.(*Resources), b.(*core.Resources), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Resources)(nil), (*Resources)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Resources_To_v1alpha1_Resources(a.(*core.Resources), b.(*Resources), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*SecretReference)(nil), (*core.SecretReference)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_SecretReference_To_core_SecretReference(a.(*SecretReference), b.(*core.SecretReference), scope) }); err != nil { @@ -523,6 +633,116 @@ func Convert_core_AvailabilityInstance_To_v1alpha1_AvailabilityInstance(in *core return autoConvert_core_AvailabilityInstance_To_v1alpha1_AvailabilityInstance(in, out, s) } +func autoConvert_v1alpha1_Controller_To_core_Controller(in *Controller, out *core.Controller, s conversion.Scope) error { + out.Workers = in.Workers + return nil +} + +// Convert_v1alpha1_Controller_To_core_Controller is an autogenerated conversion function. +func Convert_v1alpha1_Controller_To_core_Controller(in *Controller, out *core.Controller, s conversion.Scope) error { + return autoConvert_v1alpha1_Controller_To_core_Controller(in, out, s) +} + +func autoConvert_core_Controller_To_v1alpha1_Controller(in *core.Controller, out *Controller, s conversion.Scope) error { + out.Workers = in.Workers + return nil +} + +// Convert_core_Controller_To_v1alpha1_Controller is an autogenerated conversion function. +func Convert_core_Controller_To_v1alpha1_Controller(in *core.Controller, out *Controller, s conversion.Scope) error { + return autoConvert_core_Controller_To_v1alpha1_Controller(in, out, s) +} + +func autoConvert_v1alpha1_Controllers_To_core_Controllers(in *Controllers, out *core.Controllers, s conversion.Scope) error { + out.Installations = (*core.Controller)(unsafe.Pointer(in.Installations)) + out.Executions = (*core.Controller)(unsafe.Pointer(in.Executions)) + return nil +} + +// Convert_v1alpha1_Controllers_To_core_Controllers is an autogenerated conversion function. +func Convert_v1alpha1_Controllers_To_core_Controllers(in *Controllers, out *core.Controllers, s conversion.Scope) error { + return autoConvert_v1alpha1_Controllers_To_core_Controllers(in, out, s) +} + +func autoConvert_core_Controllers_To_v1alpha1_Controllers(in *core.Controllers, out *Controllers, s conversion.Scope) error { + out.Installations = (*Controller)(unsafe.Pointer(in.Installations)) + out.Executions = (*Controller)(unsafe.Pointer(in.Executions)) + return nil +} + +// Convert_core_Controllers_To_v1alpha1_Controllers is an autogenerated conversion function. +func Convert_core_Controllers_To_v1alpha1_Controllers(in *core.Controllers, out *Controllers, s conversion.Scope) error { + return autoConvert_core_Controllers_To_v1alpha1_Controllers(in, out, s) +} + +func autoConvert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in *DeployItemTimeouts, out *core.DeployItemTimeouts, s conversion.Scope) error { + out.Pickup = in.Pickup + out.ProgressingDefault = in.ProgressingDefault + return nil +} + +// Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts is an autogenerated conversion function. +func Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in *DeployItemTimeouts, out *core.DeployItemTimeouts, s conversion.Scope) error { + return autoConvert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in, out, s) +} + +func autoConvert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in *core.DeployItemTimeouts, out *DeployItemTimeouts, s conversion.Scope) error { + out.Pickup = in.Pickup + out.ProgressingDefault = in.ProgressingDefault + return nil +} + +// Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts is an autogenerated conversion function. +func Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in *core.DeployItemTimeouts, out *DeployItemTimeouts, s conversion.Scope) error { + return autoConvert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in, out, s) +} + +func autoConvert_v1alpha1_Deployer_To_core_Deployer(in *Deployer, out *core.Deployer, s conversion.Scope) error { + out.Controller = (*core.Controller)(unsafe.Pointer(in.Controller)) + out.K8SClientSettings = (*core.K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + return nil +} + +// Convert_v1alpha1_Deployer_To_core_Deployer is an autogenerated conversion function. +func Convert_v1alpha1_Deployer_To_core_Deployer(in *Deployer, out *core.Deployer, s conversion.Scope) error { + return autoConvert_v1alpha1_Deployer_To_core_Deployer(in, out, s) +} + +func autoConvert_core_Deployer_To_v1alpha1_Deployer(in *core.Deployer, out *Deployer, s conversion.Scope) error { + out.Controller = (*Controller)(unsafe.Pointer(in.Controller)) + out.K8SClientSettings = (*K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + return nil +} + +// Convert_core_Deployer_To_v1alpha1_Deployer is an autogenerated conversion function. +func Convert_core_Deployer_To_v1alpha1_Deployer(in *core.Deployer, out *Deployer, s conversion.Scope) error { + return autoConvert_core_Deployer_To_v1alpha1_Deployer(in, out, s) +} + +func autoConvert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in *DeployerConfig, out *core.DeployerConfig, s conversion.Scope) error { + out.Deployer = (*core.Deployer)(unsafe.Pointer(in.Deployer)) + out.Resources = (*core.Resources)(unsafe.Pointer(in.Resources)) + out.HPA = (*core.HPA)(unsafe.Pointer(in.HPA)) + return nil +} + +// Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig is an autogenerated conversion function. +func Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in *DeployerConfig, out *core.DeployerConfig, s conversion.Scope) error { + return autoConvert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in, out, s) +} + +func autoConvert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in *core.DeployerConfig, out *DeployerConfig, s conversion.Scope) error { + out.Deployer = (*Deployer)(unsafe.Pointer(in.Deployer)) + out.Resources = (*Resources)(unsafe.Pointer(in.Resources)) + out.HPA = (*HPA)(unsafe.Pointer(in.HPA)) + return nil +} + +// Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig is an autogenerated conversion function. +func Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in *core.DeployerConfig, out *DeployerConfig, s conversion.Scope) error { + return autoConvert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in, out, s) +} + func autoConvert_v1alpha1_Error_To_core_Error(in *Error, out *core.Error, s conversion.Scope) error { out.Operation = in.Operation out.LastTransitionTime = in.LastTransitionTime @@ -551,6 +771,30 @@ func Convert_core_Error_To_v1alpha1_Error(in *core.Error, out *Error, s conversi return autoConvert_core_Error_To_v1alpha1_Error(in, out, s) } +func autoConvert_v1alpha1_HPA_To_core_HPA(in *HPA, out *core.HPA, s conversion.Scope) error { + out.MaxReplicas = in.MaxReplicas + out.AverageMemoryUtilization = in.AverageMemoryUtilization + out.AverageCpuUtilization = in.AverageCpuUtilization + return nil +} + +// Convert_v1alpha1_HPA_To_core_HPA is an autogenerated conversion function. +func Convert_v1alpha1_HPA_To_core_HPA(in *HPA, out *core.HPA, s conversion.Scope) error { + return autoConvert_v1alpha1_HPA_To_core_HPA(in, out, s) +} + +func autoConvert_core_HPA_To_v1alpha1_HPA(in *core.HPA, out *HPA, s conversion.Scope) error { + out.MaxReplicas = in.MaxReplicas + out.AverageMemoryUtilization = in.AverageMemoryUtilization + out.AverageCpuUtilization = in.AverageCpuUtilization + return nil +} + +// Convert_core_HPA_To_v1alpha1_HPA is an autogenerated conversion function. +func Convert_core_HPA_To_v1alpha1_HPA(in *core.HPA, out *HPA, s conversion.Scope) error { + return autoConvert_core_HPA_To_v1alpha1_HPA(in, out, s) +} + func autoConvert_v1alpha1_HighAvailabilityConfig_To_core_HighAvailabilityConfig(in *HighAvailabilityConfig, out *core.HighAvailabilityConfig, s conversion.Scope) error { out.ControlPlaneFailureTolerance = in.ControlPlaneFailureTolerance return nil @@ -707,8 +951,81 @@ func Convert_core_InstanceStatus_To_v1alpha1_InstanceStatus(in *core.InstanceSta return autoConvert_core_InstanceStatus_To_v1alpha1_InstanceStatus(in, out, s) } +func autoConvert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in *K8SClientLimits, out *core.K8SClientLimits, s conversion.Scope) error { + out.Burst = in.Burst + out.QPS = in.QPS + return nil +} + +// Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits is an autogenerated conversion function. +func Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in *K8SClientLimits, out *core.K8SClientLimits, s conversion.Scope) error { + return autoConvert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in, out, s) +} + +func autoConvert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in *core.K8SClientLimits, out *K8SClientLimits, s conversion.Scope) error { + out.Burst = in.Burst + out.QPS = in.QPS + return nil +} + +// Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits is an autogenerated conversion function. +func Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in *core.K8SClientLimits, out *K8SClientLimits, s conversion.Scope) error { + return autoConvert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in, out, s) +} + +func autoConvert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in *K8SClientSettings, out *core.K8SClientSettings, s conversion.Scope) error { + out.HostClient = (*core.K8SClientLimits)(unsafe.Pointer(in.HostClient)) + out.ResourceClient = (*core.K8SClientLimits)(unsafe.Pointer(in.ResourceClient)) + return nil +} + +// Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings is an autogenerated conversion function. +func Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in *K8SClientSettings, out *core.K8SClientSettings, s conversion.Scope) error { + return autoConvert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in, out, s) +} + +func autoConvert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in *core.K8SClientSettings, out *K8SClientSettings, s conversion.Scope) error { + out.HostClient = (*K8SClientLimits)(unsafe.Pointer(in.HostClient)) + out.ResourceClient = (*K8SClientLimits)(unsafe.Pointer(in.ResourceClient)) + return nil +} + +// Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings is an autogenerated conversion function. +func Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in *core.K8SClientSettings, out *K8SClientSettings, s conversion.Scope) error { + return autoConvert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in, out, s) +} + +func autoConvert_v1alpha1_Landscaper_To_core_Landscaper(in *Landscaper, out *core.Landscaper, s conversion.Scope) error { + out.Controllers = (*core.Controllers)(unsafe.Pointer(in.Controllers)) + out.K8SClientSettings = (*core.K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + out.DeployItemTimeouts = (*core.DeployItemTimeouts)(unsafe.Pointer(in.DeployItemTimeouts)) + return nil +} + +// Convert_v1alpha1_Landscaper_To_core_Landscaper is an autogenerated conversion function. +func Convert_v1alpha1_Landscaper_To_core_Landscaper(in *Landscaper, out *core.Landscaper, s conversion.Scope) error { + return autoConvert_v1alpha1_Landscaper_To_core_Landscaper(in, out, s) +} + +func autoConvert_core_Landscaper_To_v1alpha1_Landscaper(in *core.Landscaper, out *Landscaper, s conversion.Scope) error { + out.Controllers = (*Controllers)(unsafe.Pointer(in.Controllers)) + out.K8SClientSettings = (*K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + out.DeployItemTimeouts = (*DeployItemTimeouts)(unsafe.Pointer(in.DeployItemTimeouts)) + return nil +} + +// Convert_core_Landscaper_To_v1alpha1_Landscaper is an autogenerated conversion function. +func Convert_core_Landscaper_To_v1alpha1_Landscaper(in *core.Landscaper, out *Landscaper, s conversion.Scope) error { + return autoConvert_core_Landscaper_To_v1alpha1_Landscaper(in, out, s) +} + func autoConvert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(in *LandscaperConfiguration, out *core.LandscaperConfiguration, s conversion.Scope) error { + out.Landscaper = (*core.Landscaper)(unsafe.Pointer(in.Landscaper)) + out.Resources = (*core.Resources)(unsafe.Pointer(in.Resources)) + out.ResourcesMain = (*core.Resources)(unsafe.Pointer(in.ResourcesMain)) + out.HPAMain = (*core.HPA)(unsafe.Pointer(in.HPAMain)) out.Deployers = *(*[]string)(unsafe.Pointer(&in.Deployers)) + out.DeployersConfig = *(*map[string]*core.DeployerConfig)(unsafe.Pointer(&in.DeployersConfig)) return nil } @@ -718,7 +1035,12 @@ func Convert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(in } func autoConvert_core_LandscaperConfiguration_To_v1alpha1_LandscaperConfiguration(in *core.LandscaperConfiguration, out *LandscaperConfiguration, s conversion.Scope) error { + out.Landscaper = (*Landscaper)(unsafe.Pointer(in.Landscaper)) + out.Resources = (*Resources)(unsafe.Pointer(in.Resources)) + out.ResourcesMain = (*Resources)(unsafe.Pointer(in.ResourcesMain)) + out.HPAMain = (*HPA)(unsafe.Pointer(in.HPAMain)) out.Deployers = *(*[]string)(unsafe.Pointer(&in.Deployers)) + out.DeployersConfig = *(*map[string]*DeployerConfig)(unsafe.Pointer(&in.DeployersConfig)) return nil } @@ -1001,6 +1323,52 @@ func Convert_core_ObjectReference_To_v1alpha1_ObjectReference(in *core.ObjectRef return autoConvert_core_ObjectReference_To_v1alpha1_ObjectReference(in, out, s) } +func autoConvert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in *ResourceRequests, out *core.ResourceRequests, s conversion.Scope) error { + out.CPU = in.CPU + out.Memory = in.Memory + return nil +} + +// Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests is an autogenerated conversion function. +func Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in *ResourceRequests, out *core.ResourceRequests, s conversion.Scope) error { + return autoConvert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in, out, s) +} + +func autoConvert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in *core.ResourceRequests, out *ResourceRequests, s conversion.Scope) error { + out.CPU = in.CPU + out.Memory = in.Memory + return nil +} + +// Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests is an autogenerated conversion function. +func Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in *core.ResourceRequests, out *ResourceRequests, s conversion.Scope) error { + return autoConvert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in, out, s) +} + +func autoConvert_v1alpha1_Resources_To_core_Resources(in *Resources, out *core.Resources, s conversion.Scope) error { + if err := Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(&in.Requests, &out.Requests, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_Resources_To_core_Resources is an autogenerated conversion function. +func Convert_v1alpha1_Resources_To_core_Resources(in *Resources, out *core.Resources, s conversion.Scope) error { + return autoConvert_v1alpha1_Resources_To_core_Resources(in, out, s) +} + +func autoConvert_core_Resources_To_v1alpha1_Resources(in *core.Resources, out *Resources, s conversion.Scope) error { + if err := Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(&in.Requests, &out.Requests, s); err != nil { + return err + } + return nil +} + +// Convert_core_Resources_To_v1alpha1_Resources is an autogenerated conversion function. +func Convert_core_Resources_To_v1alpha1_Resources(in *core.Resources, out *Resources, s conversion.Scope) error { + return autoConvert_core_Resources_To_v1alpha1_Resources(in, out, s) +} + func autoConvert_v1alpha1_SecretReference_To_core_SecretReference(in *SecretReference, out *core.SecretReference, s conversion.Scope) error { if err := Convert_v1alpha1_ObjectReference_To_core_ObjectReference(&in.ObjectReference, &out.ObjectReference, s); err != nil { return err diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go index 86718f709..2fc513605 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go @@ -154,6 +154,121 @@ func (in *AvailabilityInstance) DeepCopy() *AvailabilityInstance { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controller) DeepCopyInto(out *Controller) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller. +func (in *Controller) DeepCopy() *Controller { + if in == nil { + return nil + } + out := new(Controller) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controllers) DeepCopyInto(out *Controllers) { + *out = *in + if in.Installations != nil { + in, out := &in.Installations, &out.Installations + *out = new(Controller) + **out = **in + } + if in.Executions != nil { + in, out := &in.Executions, &out.Executions + *out = new(Controller) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controllers. +func (in *Controllers) DeepCopy() *Controllers { + if in == nil { + return nil + } + out := new(Controllers) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployItemTimeouts) DeepCopyInto(out *DeployItemTimeouts) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployItemTimeouts. +func (in *DeployItemTimeouts) DeepCopy() *DeployItemTimeouts { + if in == nil { + return nil + } + out := new(DeployItemTimeouts) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Deployer) DeepCopyInto(out *Deployer) { + *out = *in + if in.Controller != nil { + in, out := &in.Controller, &out.Controller + *out = new(Controller) + **out = **in + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployer. +func (in *Deployer) DeepCopy() *Deployer { + if in == nil { + return nil + } + out := new(Deployer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployerConfig) DeepCopyInto(out *DeployerConfig) { + *out = *in + if in.Deployer != nil { + in, out := &in.Deployer, &out.Deployer + *out = new(Deployer) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.HPA != nil { + in, out := &in.HPA, &out.HPA + *out = new(HPA) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployerConfig. +func (in *DeployerConfig) DeepCopy() *DeployerConfig { + if in == nil { + return nil + } + out := new(DeployerConfig) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Error) DeepCopyInto(out *Error) { *out = *in @@ -172,6 +287,22 @@ func (in *Error) DeepCopy() *Error { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPA) DeepCopyInto(out *HPA) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPA. +func (in *HPA) DeepCopy() *HPA { + if in == nil { + return nil + } + out := new(HPA) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityConfig) DeepCopyInto(out *HighAvailabilityConfig) { *out = *in @@ -328,14 +459,122 @@ func (in *InstanceStatus) DeepCopy() *InstanceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientLimits) DeepCopyInto(out *K8SClientLimits) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientLimits. +func (in *K8SClientLimits) DeepCopy() *K8SClientLimits { + if in == nil { + return nil + } + out := new(K8SClientLimits) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientSettings) DeepCopyInto(out *K8SClientSettings) { + *out = *in + if in.HostClient != nil { + in, out := &in.HostClient, &out.HostClient + *out = new(K8SClientLimits) + **out = **in + } + if in.ResourceClient != nil { + in, out := &in.ResourceClient, &out.ResourceClient + *out = new(K8SClientLimits) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientSettings. +func (in *K8SClientSettings) DeepCopy() *K8SClientSettings { + if in == nil { + return nil + } + out := new(K8SClientSettings) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Landscaper) DeepCopyInto(out *Landscaper) { + *out = *in + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = new(Controllers) + (*in).DeepCopyInto(*out) + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + if in.DeployItemTimeouts != nil { + in, out := &in.DeployItemTimeouts, &out.DeployItemTimeouts + *out = new(DeployItemTimeouts) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Landscaper. +func (in *Landscaper) DeepCopy() *Landscaper { + if in == nil { + return nil + } + out := new(Landscaper) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LandscaperConfiguration) DeepCopyInto(out *LandscaperConfiguration) { *out = *in + if in.Landscaper != nil { + in, out := &in.Landscaper, &out.Landscaper + *out = new(Landscaper) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.ResourcesMain != nil { + in, out := &in.ResourcesMain, &out.ResourcesMain + *out = new(Resources) + **out = **in + } + if in.HPAMain != nil { + in, out := &in.HPAMain, &out.HPAMain + *out = new(HPA) + **out = **in + } if in.Deployers != nil { in, out := &in.Deployers, &out.Deployers *out = make([]string, len(*in)) copy(*out, *in) } + if in.DeployersConfig != nil { + in, out := &in.DeployersConfig, &out.DeployersConfig + *out = make(map[string]*DeployerConfig, len(*in)) + for key, val := range *in { + var outVal *DeployerConfig + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(DeployerConfig) + (*in).DeepCopyInto(*out) + } + (*out)[key] = outVal + } + } return } @@ -609,6 +848,39 @@ func (in *ObjectReference) DeepCopy() *ObjectReference { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequests. +func (in *ResourceRequests) DeepCopy() *ResourceRequests { + if in == nil { + return nil + } + out := new(ResourceRequests) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Resources) DeepCopyInto(out *Resources) { + *out = *in + out.Requests = in.Requests + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources. +func (in *Resources) DeepCopy() *Resources { + if in == nil { + return nil + } + out := new(Resources) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretReference) DeepCopyInto(out *SecretReference) { *out = *in diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/zz_generated.deepcopy.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/zz_generated.deepcopy.go index 3b0b2c6fe..b2c931779 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/zz_generated.deepcopy.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/core/zz_generated.deepcopy.go @@ -154,6 +154,121 @@ func (in *AvailabilityInstance) DeepCopy() *AvailabilityInstance { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controller) DeepCopyInto(out *Controller) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller. +func (in *Controller) DeepCopy() *Controller { + if in == nil { + return nil + } + out := new(Controller) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controllers) DeepCopyInto(out *Controllers) { + *out = *in + if in.Installations != nil { + in, out := &in.Installations, &out.Installations + *out = new(Controller) + **out = **in + } + if in.Executions != nil { + in, out := &in.Executions, &out.Executions + *out = new(Controller) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controllers. +func (in *Controllers) DeepCopy() *Controllers { + if in == nil { + return nil + } + out := new(Controllers) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployItemTimeouts) DeepCopyInto(out *DeployItemTimeouts) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployItemTimeouts. +func (in *DeployItemTimeouts) DeepCopy() *DeployItemTimeouts { + if in == nil { + return nil + } + out := new(DeployItemTimeouts) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Deployer) DeepCopyInto(out *Deployer) { + *out = *in + if in.Controller != nil { + in, out := &in.Controller, &out.Controller + *out = new(Controller) + **out = **in + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployer. +func (in *Deployer) DeepCopy() *Deployer { + if in == nil { + return nil + } + out := new(Deployer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployerConfig) DeepCopyInto(out *DeployerConfig) { + *out = *in + if in.Deployer != nil { + in, out := &in.Deployer, &out.Deployer + *out = new(Deployer) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.HPA != nil { + in, out := &in.HPA, &out.HPA + *out = new(HPA) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployerConfig. +func (in *DeployerConfig) DeepCopy() *DeployerConfig { + if in == nil { + return nil + } + out := new(DeployerConfig) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Error) DeepCopyInto(out *Error) { *out = *in @@ -172,6 +287,22 @@ func (in *Error) DeepCopy() *Error { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPA) DeepCopyInto(out *HPA) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPA. +func (in *HPA) DeepCopy() *HPA { + if in == nil { + return nil + } + out := new(HPA) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityConfig) DeepCopyInto(out *HighAvailabilityConfig) { *out = *in @@ -328,14 +459,122 @@ func (in *InstanceStatus) DeepCopy() *InstanceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientLimits) DeepCopyInto(out *K8SClientLimits) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientLimits. +func (in *K8SClientLimits) DeepCopy() *K8SClientLimits { + if in == nil { + return nil + } + out := new(K8SClientLimits) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientSettings) DeepCopyInto(out *K8SClientSettings) { + *out = *in + if in.HostClient != nil { + in, out := &in.HostClient, &out.HostClient + *out = new(K8SClientLimits) + **out = **in + } + if in.ResourceClient != nil { + in, out := &in.ResourceClient, &out.ResourceClient + *out = new(K8SClientLimits) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientSettings. +func (in *K8SClientSettings) DeepCopy() *K8SClientSettings { + if in == nil { + return nil + } + out := new(K8SClientSettings) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Landscaper) DeepCopyInto(out *Landscaper) { + *out = *in + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = new(Controllers) + (*in).DeepCopyInto(*out) + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + if in.DeployItemTimeouts != nil { + in, out := &in.DeployItemTimeouts, &out.DeployItemTimeouts + *out = new(DeployItemTimeouts) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Landscaper. +func (in *Landscaper) DeepCopy() *Landscaper { + if in == nil { + return nil + } + out := new(Landscaper) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LandscaperConfiguration) DeepCopyInto(out *LandscaperConfiguration) { *out = *in + if in.Landscaper != nil { + in, out := &in.Landscaper, &out.Landscaper + *out = new(Landscaper) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.ResourcesMain != nil { + in, out := &in.ResourcesMain, &out.ResourcesMain + *out = new(Resources) + **out = **in + } + if in.HPAMain != nil { + in, out := &in.HPAMain, &out.HPAMain + *out = new(HPA) + **out = **in + } if in.Deployers != nil { in, out := &in.Deployers, &out.Deployers *out = make([]string, len(*in)) copy(*out, *in) } + if in.DeployersConfig != nil { + in, out := &in.DeployersConfig, &out.DeployersConfig + *out = make(map[string]*DeployerConfig, len(*in)) + for key, val := range *in { + var outVal *DeployerConfig + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(DeployerConfig) + (*in).DeepCopyInto(*out) + } + (*out)[key] = outVal + } + } return } @@ -609,6 +848,39 @@ func (in *ObjectReference) DeepCopy() *ObjectReference { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequests. +func (in *ResourceRequests) DeepCopy() *ResourceRequests { + if in == nil { + return nil + } + out := new(ResourceRequests) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Resources) DeepCopyInto(out *Resources) { + *out = *in + out.Requests = in.Requests + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources. +func (in *Resources) DeepCopy() *Resources { + if in == nil { + return nil + } + out := new(Resources) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretReference) DeepCopyInto(out *SecretReference) { *out = *in diff --git a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/installation/installation.go b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/installation/installation.go index 5ade4fbe1..ade334aef 100644 --- a/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/installation/installation.go +++ b/integration-test/vendor/github.com/gardener/landscaper-service/pkg/apis/installation/installation.go @@ -112,7 +112,11 @@ type Landscaper struct { // Verbosity defines the logging verbosity level. Verbosity string `json:"verbosity,omitempty"` // Replicas defines the number of replicas for the landscaper controller deployment. - Replicas int `json:"replicas,omitempty"` + Replicas int `json:"replicas,omitempty"` + Controllers *lssv1alpha1.Controllers `json:"controllers,omitempty"` + DeployItemTimeouts *lssv1alpha1.DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` + // K8SClientSettings defines k8s client settings like burst and qps. + K8SClientSettings *lssv1alpha1.K8SClientSettings `json:"k8sClientSettings,omitempty"` } // Webhooks specifies the landscaper webhooks server configuration. @@ -128,11 +132,14 @@ type LandscaperConfig struct { // Landscaper specifies the landscaper controller configuration. Landscaper Landscaper `json:"landscaper"` // Webhooks specifies the landscaper webhooks server configuration. - Webhooks Webhooks `json:"webhooksServer"` + Webhooks Webhooks `json:"webhooksServer"` + Resources *lssv1alpha1.Resources `json:"resources,omitempty"` + ResourcesMain *lssv1alpha1.Resources `json:"resourcesMain,omitempty"` + HPAMain *lssv1alpha1.HPA `json:"hpaMain,omitempty"` // Deployers specifies the list of landscaper standard deployers that are getting installed. Deployers []string `json:"deployers"` // DeployersConfig specifies the configuration for the landscaper standard deployers. - DeployersConfig lsv1alpha1.AnyJSON `json:"deployersConfig,omitempty"` + DeployersConfig map[string]*lssv1alpha1.DeployerConfig `json:"deployersConfig,omitempty"` } // NewLandscaperConfig creates a new landscaper configuration initialized with default values. @@ -146,8 +153,7 @@ func NewLandscaperConfig() *LandscaperConfig { ServicePort: WebhooksServicePortDefault, Replicas: 2, }, - Deployers: make([]string, 0), - DeployersConfig: lsv1alpha1.NewAnyJSON([]byte("{}")), + Deployers: make([]string, 0), } return c } diff --git a/pkg/apis/.schemes/core-v1alpha1-Instance.json b/pkg/apis/.schemes/core-v1alpha1-Instance.json index faec4c101..b2caf513a 100755 --- a/pkg/apis/.schemes/core-v1alpha1-Instance.json +++ b/pkg/apis/.schemes/core-v1alpha1-Instance.json @@ -15,6 +15,66 @@ } } }, + "core-v1alpha1-Controller": { + "description": "Controller specifies the config for a landscaper controller.", + "type": "object", + "properties": { + "workers": { + "type": "integer", + "format": "int32" + } + } + }, + "core-v1alpha1-Controllers": { + "description": "Controllers specifies the config for the \"main\" landscaper controllers, i.e. the installation and execution controller.", + "type": "object", + "properties": { + "executions": { + "$ref": "#/definitions/core-v1alpha1-Controller" + }, + "installations": { + "$ref": "#/definitions/core-v1alpha1-Controller" + } + } + }, + "core-v1alpha1-DeployItemTimeouts": { + "description": "DeployItemTimeouts configures the timeout controller.", + "type": "object", + "properties": { + "pickup": { + "type": "string" + }, + "progressingDefault": { + "type": "string" + } + } + }, + "core-v1alpha1-Deployer": { + "type": "object", + "properties": { + "controller": { + "$ref": "#/definitions/core-v1alpha1-Controller" + }, + "k8sClientSettings": { + "$ref": "#/definitions/core-v1alpha1-K8SClientSettings" + } + } + }, + "core-v1alpha1-DeployerConfig": { + "description": "DeployerConfig configures a deployer.", + "type": "object", + "properties": { + "deployer": { + "$ref": "#/definitions/core-v1alpha1-Deployer" + }, + "hpa": { + "$ref": "#/definitions/core-v1alpha1-HPA" + }, + "resources": { + "$ref": "#/definitions/core-v1alpha1-Resources" + } + } + }, "core-v1alpha1-Duration": { "description": "Duration is a wrapper for time.Duration that implements JSON marshalling and openapi scheme.", "type": "string" @@ -57,6 +117,24 @@ } } }, + "core-v1alpha1-HPA": { + "description": "HPA configures the horizontal pod autoscaling of pods.", + "type": "object", + "properties": { + "averageCpuUtilization": { + "type": "integer", + "format": "int32" + }, + "averageMemoryUtilization": { + "type": "integer", + "format": "int32" + }, + "maxReplicas": { + "type": "integer", + "format": "int32" + } + } + }, "core-v1alpha1-HighAvailabilityConfig": { "description": "HighAvailabilityConfig specifies the HA configuration for the resource cluster (shoot cluster)", "type": "object", @@ -171,6 +249,46 @@ } } }, + "core-v1alpha1-K8SClientLimits": { + "description": "K8SClientLimits specifies the settings for a k8s client.", + "type": "object", + "properties": { + "burst": { + "type": "integer", + "format": "int32" + }, + "qps": { + "type": "integer", + "format": "int32" + } + } + }, + "core-v1alpha1-K8SClientSettings": { + "description": "K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster.", + "type": "object", + "properties": { + "hostClient": { + "$ref": "#/definitions/core-v1alpha1-K8SClientLimits" + }, + "resourceClient": { + "$ref": "#/definitions/core-v1alpha1-K8SClientLimits" + } + } + }, + "core-v1alpha1-Landscaper": { + "type": "object", + "properties": { + "controllers": { + "$ref": "#/definitions/core-v1alpha1-Controllers" + }, + "deployItemTimeouts": { + "$ref": "#/definitions/core-v1alpha1-DeployItemTimeouts" + }, + "k8sClientSettings": { + "$ref": "#/definitions/core-v1alpha1-K8SClientSettings" + } + } + }, "core-v1alpha1-LandscaperConfiguration": { "description": "LandscaperConfiguration contains the configuration for a landscaper service deployment.", "type": "object", @@ -185,6 +303,28 @@ "type": "string", "default": "" } + }, + "deployersConfig": { + "description": "DeployersConfig specifies the configuration for the landscaper standard deployers.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/core-v1alpha1-DeployerConfig" + } + }, + "hpaMain": { + "description": "HPAMain configures the horizontal pod autoscaling of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + "$ref": "#/definitions/core-v1alpha1-HPA" + }, + "landscaper": { + "$ref": "#/definitions/core-v1alpha1-Landscaper" + }, + "resources": { + "description": "Resources configures the resources of the \"central\" landscaper pod, i.e. the pod responsible for crds creation, deployer management, context controller.", + "$ref": "#/definitions/core-v1alpha1-Resources" + }, + "resourcesMain": { + "description": "ResourcesMain configures the resources of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + "$ref": "#/definitions/core-v1alpha1-Resources" } } }, @@ -245,6 +385,27 @@ } } }, + "core-v1alpha1-ResourceRequests": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + }, + "core-v1alpha1-Resources": { + "description": "Resources configures the resources of pods (requested cpu and memory)", + "type": "object", + "properties": { + "requests": { + "default": {}, + "$ref": "#/definitions/core-v1alpha1-ResourceRequests" + } + } + }, "meta-v1-FieldsV1": { "description": "FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a '.' representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: 'f:\u003cname\u003e', where \u003cname\u003e is the name of a field in a struct, or key in a map 'v:\u003cvalue\u003e', where \u003cvalue\u003e is the exact json formatted value of a list item 'i:\u003cindex\u003e', where \u003cindex\u003e is position of a item in a list 'k:\u003ckeys\u003e', where \u003ckeys\u003e is a map of a list item's key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff", "type": "object" diff --git a/pkg/apis/.schemes/core-v1alpha1-LandscaperDeployment.json b/pkg/apis/.schemes/core-v1alpha1-LandscaperDeployment.json index c0bc74c0d..61fcddeb0 100755 --- a/pkg/apis/.schemes/core-v1alpha1-LandscaperDeployment.json +++ b/pkg/apis/.schemes/core-v1alpha1-LandscaperDeployment.json @@ -1,6 +1,66 @@ { "$schema": "https://json-schema.org/draft-07/schema#", "definitions": { + "core-v1alpha1-Controller": { + "description": "Controller specifies the config for a landscaper controller.", + "type": "object", + "properties": { + "workers": { + "type": "integer", + "format": "int32" + } + } + }, + "core-v1alpha1-Controllers": { + "description": "Controllers specifies the config for the \"main\" landscaper controllers, i.e. the installation and execution controller.", + "type": "object", + "properties": { + "executions": { + "$ref": "#/definitions/core-v1alpha1-Controller" + }, + "installations": { + "$ref": "#/definitions/core-v1alpha1-Controller" + } + } + }, + "core-v1alpha1-DeployItemTimeouts": { + "description": "DeployItemTimeouts configures the timeout controller.", + "type": "object", + "properties": { + "pickup": { + "type": "string" + }, + "progressingDefault": { + "type": "string" + } + } + }, + "core-v1alpha1-Deployer": { + "type": "object", + "properties": { + "controller": { + "$ref": "#/definitions/core-v1alpha1-Controller" + }, + "k8sClientSettings": { + "$ref": "#/definitions/core-v1alpha1-K8SClientSettings" + } + } + }, + "core-v1alpha1-DeployerConfig": { + "description": "DeployerConfig configures a deployer.", + "type": "object", + "properties": { + "deployer": { + "$ref": "#/definitions/core-v1alpha1-Deployer" + }, + "hpa": { + "$ref": "#/definitions/core-v1alpha1-HPA" + }, + "resources": { + "$ref": "#/definitions/core-v1alpha1-Resources" + } + } + }, "core-v1alpha1-Error": { "description": "Error holds information about an error that occurred.", "type": "object", @@ -39,6 +99,24 @@ } } }, + "core-v1alpha1-HPA": { + "description": "HPA configures the horizontal pod autoscaling of pods.", + "type": "object", + "properties": { + "averageCpuUtilization": { + "type": "integer", + "format": "int32" + }, + "averageMemoryUtilization": { + "type": "integer", + "format": "int32" + }, + "maxReplicas": { + "type": "integer", + "format": "int32" + } + } + }, "core-v1alpha1-HighAvailabilityConfig": { "description": "HighAvailabilityConfig specifies the HA configuration for the resource cluster (shoot cluster)", "type": "object", @@ -53,6 +131,46 @@ } } }, + "core-v1alpha1-K8SClientLimits": { + "description": "K8SClientLimits specifies the settings for a k8s client.", + "type": "object", + "properties": { + "burst": { + "type": "integer", + "format": "int32" + }, + "qps": { + "type": "integer", + "format": "int32" + } + } + }, + "core-v1alpha1-K8SClientSettings": { + "description": "K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster.", + "type": "object", + "properties": { + "hostClient": { + "$ref": "#/definitions/core-v1alpha1-K8SClientLimits" + }, + "resourceClient": { + "$ref": "#/definitions/core-v1alpha1-K8SClientLimits" + } + } + }, + "core-v1alpha1-Landscaper": { + "type": "object", + "properties": { + "controllers": { + "$ref": "#/definitions/core-v1alpha1-Controllers" + }, + "deployItemTimeouts": { + "$ref": "#/definitions/core-v1alpha1-DeployItemTimeouts" + }, + "k8sClientSettings": { + "$ref": "#/definitions/core-v1alpha1-K8SClientSettings" + } + } + }, "core-v1alpha1-LandscaperConfiguration": { "description": "LandscaperConfiguration contains the configuration for a landscaper service deployment.", "type": "object", @@ -67,6 +185,28 @@ "type": "string", "default": "" } + }, + "deployersConfig": { + "description": "DeployersConfig specifies the configuration for the landscaper standard deployers.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/core-v1alpha1-DeployerConfig" + } + }, + "hpaMain": { + "description": "HPAMain configures the horizontal pod autoscaling of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + "$ref": "#/definitions/core-v1alpha1-HPA" + }, + "landscaper": { + "$ref": "#/definitions/core-v1alpha1-Landscaper" + }, + "resources": { + "description": "Resources configures the resources of the \"central\" landscaper pod, i.e. the pod responsible for crds creation, deployer management, context controller.", + "$ref": "#/definitions/core-v1alpha1-Resources" + }, + "resourcesMain": { + "description": "ResourcesMain configures the resources of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + "$ref": "#/definitions/core-v1alpha1-Resources" } } }, @@ -161,6 +301,27 @@ } } }, + "core-v1alpha1-ResourceRequests": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + }, + "core-v1alpha1-Resources": { + "description": "Resources configures the resources of pods (requested cpu and memory)", + "type": "object", + "properties": { + "requests": { + "default": {}, + "$ref": "#/definitions/core-v1alpha1-ResourceRequests" + } + } + }, "meta-v1-FieldsV1": { "description": "FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a '.' representing the field itself, and will always map to an empty set, or a string representing a sub-field or item. The string will follow one of these four formats: 'f:\u003cname\u003e', where \u003cname\u003e is the name of a field in a struct, or key in a map 'v:\u003cvalue\u003e', where \u003cvalue\u003e is the exact json formatted value of a list item 'i:\u003cindex\u003e', where \u003cindex\u003e is position of a item in a list 'k:\u003ckeys\u003e', where \u003ckeys\u003e is a map of a list item's key fields to their unique values If a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff", "type": "object" diff --git a/pkg/apis/core/types_shared.go b/pkg/apis/core/types_shared.go index 5132990e2..b1e2a0044 100644 --- a/pkg/apis/core/types_shared.go +++ b/pkg/apis/core/types_shared.go @@ -71,8 +71,87 @@ type Error struct { // LandscaperConfiguration contains the configuration for a landscaper service deployment. type LandscaperConfiguration struct { + // +optional + Landscaper *Landscaper `json:"landscaper,omitempty"` + // Resources configures the resources of the "central" landscaper pod, i.e. the pod responsible for crds creation, + // deployer management, context controller. + // +optional + Resources *Resources `json:"resources,omitempty"` + // ResourcesMain configures the resources of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + ResourcesMain *Resources `json:"resourcesMain,omitempty"` + // HPAMain configures the horizontal pod autoscaling of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + HPAMain *HPA `json:"hpaMain,omitempty"` // Deployers is the list of deployers that are getting installed alongside with this Instance. Deployers []string `json:"deployers"` + // DeployersConfig specifies the configuration for the landscaper standard deployers. + // +optional + DeployersConfig map[string]*DeployerConfig `json:"deployersConfig,omitempty"` +} + +type Landscaper struct { + Controllers *Controllers `json:"controllers,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` + DeployItemTimeouts *DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` +} + +// Controllers specifies the config for the "main" landscaper controllers, i.e. the installation and execution controller. +type Controllers struct { + Installations *Controller `json:"installations,omitempty"` + Executions *Controller `json:"executions,omitempty"` +} + +// Controller specifies the config for a landscaper controller. +type Controller struct { + Workers int32 `json:"workers,omitempty"` +} + +// K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster. +type K8SClientSettings struct { + HostClient *K8SClientLimits `json:"hostClient,omitempty"` + ResourceClient *K8SClientLimits `json:"resourceClient,omitempty"` +} + +// K8SClientLimits specifies the settings for a k8s client. +type K8SClientLimits struct { + Burst int32 `json:"burst,omitempty"` + QPS int32 `json:"qps,omitempty"` +} + +// DeployItemTimeouts configures the timeout controller. +type DeployItemTimeouts struct { + Pickup string `json:"pickup,omitempty"` + ProgressingDefault string `json:"progressingDefault,omitempty"` +} + +// DeployerConfig configures a deployer. +type DeployerConfig struct { + Deployer *Deployer `json:"deployer,omitempty"` + Resources *Resources `json:"resources,omitempty"` + HPA *HPA `json:"hpa,omitempty"` +} + +type Deployer struct { + Controller *Controller `json:"controller,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` +} + +// Resources configures the resources of pods (requested cpu and memory) +type Resources struct { + Requests ResourceRequests `json:"requests,omitempty"` +} + +type ResourceRequests struct { + CPU string `json:"cpu,omitempty"` + Memory string `json:"memory,omitempty"` +} + +// HPA configures the horizontal pod autoscaling of pods. +type HPA struct { + MaxReplicas int32 `json:"maxReplicas,omitempty"` + AverageMemoryUtilization int32 `json:"averageMemoryUtilization,omitempty"` + AverageCpuUtilization int32 `json:"averageCpuUtilization,omitempty"` } // LandscaperServiceComponent defines the landscaper service component that is being used. diff --git a/pkg/apis/core/v1alpha1/types_shared.go b/pkg/apis/core/v1alpha1/types_shared.go index 93f2f9628..8580ab442 100644 --- a/pkg/apis/core/v1alpha1/types_shared.go +++ b/pkg/apis/core/v1alpha1/types_shared.go @@ -71,8 +71,87 @@ type Error struct { // LandscaperConfiguration contains the configuration for a landscaper service deployment. type LandscaperConfiguration struct { + // +optional + Landscaper *Landscaper `json:"landscaper,omitempty"` + // Resources configures the resources of the "central" landscaper pod, i.e. the pod responsible for crds creation, + // deployer management, context controller. + // +optional + Resources *Resources `json:"resources,omitempty"` + // ResourcesMain configures the resources of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + ResourcesMain *Resources `json:"resourcesMain,omitempty"` + // HPAMain configures the horizontal pod autoscaling of the "main" landscaper pods, i.e. the pods of installation and execution controller. + // +optional + HPAMain *HPA `json:"hpaMain,omitempty"` // Deployers is the list of deployers that are getting installed alongside with this Instance. Deployers []string `json:"deployers"` + // DeployersConfig specifies the configuration for the landscaper standard deployers. + // +optional + DeployersConfig map[string]*DeployerConfig `json:"deployersConfig,omitempty"` +} + +type Landscaper struct { + Controllers *Controllers `json:"controllers,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` + DeployItemTimeouts *DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` +} + +// Controllers specifies the config for the "main" landscaper controllers, i.e. the installation and execution controller. +type Controllers struct { + Installations *Controller `json:"installations,omitempty"` + Executions *Controller `json:"executions,omitempty"` +} + +// Controller specifies the config for a landscaper controller. +type Controller struct { + Workers int32 `json:"workers,omitempty"` +} + +// K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster. +type K8SClientSettings struct { + HostClient *K8SClientLimits `json:"hostClient,omitempty"` + ResourceClient *K8SClientLimits `json:"resourceClient,omitempty"` +} + +// K8SClientLimits specifies the settings for a k8s client. +type K8SClientLimits struct { + Burst int32 `json:"burst,omitempty"` + QPS int32 `json:"qps,omitempty"` +} + +// DeployItemTimeouts configures the timeout controller. +type DeployItemTimeouts struct { + Pickup string `json:"pickup,omitempty"` + ProgressingDefault string `json:"progressingDefault,omitempty"` +} + +// DeployerConfig configures a deployer. +type DeployerConfig struct { + Deployer *Deployer `json:"deployer,omitempty"` + Resources *Resources `json:"resources,omitempty"` + HPA *HPA `json:"hpa,omitempty"` +} + +type Deployer struct { + Controller *Controller `json:"controller,omitempty"` + K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"` +} + +// Resources configures the resources of pods (requested cpu and memory) +type Resources struct { + Requests ResourceRequests `json:"requests,omitempty"` +} + +type ResourceRequests struct { + CPU string `json:"cpu,omitempty"` + Memory string `json:"memory,omitempty"` +} + +// HPA configures the horizontal pod autoscaling of pods. +type HPA struct { + MaxReplicas int32 `json:"maxReplicas,omitempty"` + AverageMemoryUtilization int32 `json:"averageMemoryUtilization,omitempty"` + AverageCpuUtilization int32 `json:"averageCpuUtilization,omitempty"` } // LandscaperServiceComponent defines the landscaper service component that is being used. diff --git a/pkg/apis/core/v1alpha1/zz_generated.conversion.go b/pkg/apis/core/v1alpha1/zz_generated.conversion.go index 5a64e72d9..c5673b4d4 100644 --- a/pkg/apis/core/v1alpha1/zz_generated.conversion.go +++ b/pkg/apis/core/v1alpha1/zz_generated.conversion.go @@ -86,6 +86,56 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*Controller)(nil), (*core.Controller)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Controller_To_core_Controller(a.(*Controller), b.(*core.Controller), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Controller)(nil), (*Controller)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Controller_To_v1alpha1_Controller(a.(*core.Controller), b.(*Controller), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Controllers)(nil), (*core.Controllers)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Controllers_To_core_Controllers(a.(*Controllers), b.(*core.Controllers), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Controllers)(nil), (*Controllers)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Controllers_To_v1alpha1_Controllers(a.(*core.Controllers), b.(*Controllers), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*DeployItemTimeouts)(nil), (*core.DeployItemTimeouts)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(a.(*DeployItemTimeouts), b.(*core.DeployItemTimeouts), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.DeployItemTimeouts)(nil), (*DeployItemTimeouts)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(a.(*core.DeployItemTimeouts), b.(*DeployItemTimeouts), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Deployer)(nil), (*core.Deployer)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Deployer_To_core_Deployer(a.(*Deployer), b.(*core.Deployer), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Deployer)(nil), (*Deployer)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Deployer_To_v1alpha1_Deployer(a.(*core.Deployer), b.(*Deployer), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*DeployerConfig)(nil), (*core.DeployerConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig(a.(*DeployerConfig), b.(*core.DeployerConfig), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.DeployerConfig)(nil), (*DeployerConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig(a.(*core.DeployerConfig), b.(*DeployerConfig), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*Error)(nil), (*core.Error)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_Error_To_core_Error(a.(*Error), b.(*core.Error), scope) }); err != nil { @@ -96,6 +146,16 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*HPA)(nil), (*core.HPA)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_HPA_To_core_HPA(a.(*HPA), b.(*core.HPA), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.HPA)(nil), (*HPA)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_HPA_To_v1alpha1_HPA(a.(*core.HPA), b.(*HPA), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*HighAvailabilityConfig)(nil), (*core.HighAvailabilityConfig)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_HighAvailabilityConfig_To_core_HighAvailabilityConfig(a.(*HighAvailabilityConfig), b.(*core.HighAvailabilityConfig), scope) }); err != nil { @@ -146,6 +206,36 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*K8SClientLimits)(nil), (*core.K8SClientLimits)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(a.(*K8SClientLimits), b.(*core.K8SClientLimits), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.K8SClientLimits)(nil), (*K8SClientLimits)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(a.(*core.K8SClientLimits), b.(*K8SClientLimits), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*K8SClientSettings)(nil), (*core.K8SClientSettings)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(a.(*K8SClientSettings), b.(*core.K8SClientSettings), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.K8SClientSettings)(nil), (*K8SClientSettings)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(a.(*core.K8SClientSettings), b.(*K8SClientSettings), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Landscaper)(nil), (*core.Landscaper)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Landscaper_To_core_Landscaper(a.(*Landscaper), b.(*core.Landscaper), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Landscaper)(nil), (*Landscaper)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Landscaper_To_v1alpha1_Landscaper(a.(*core.Landscaper), b.(*Landscaper), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*LandscaperConfiguration)(nil), (*core.LandscaperConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(a.(*LandscaperConfiguration), b.(*core.LandscaperConfiguration), scope) }); err != nil { @@ -266,6 +356,26 @@ func RegisterConversions(s *runtime.Scheme) error { }); err != nil { return err } + if err := s.AddGeneratedConversionFunc((*ResourceRequests)(nil), (*core.ResourceRequests)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(a.(*ResourceRequests), b.(*core.ResourceRequests), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.ResourceRequests)(nil), (*ResourceRequests)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(a.(*core.ResourceRequests), b.(*ResourceRequests), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*Resources)(nil), (*core.Resources)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_v1alpha1_Resources_To_core_Resources(a.(*Resources), b.(*core.Resources), scope) + }); err != nil { + return err + } + if err := s.AddGeneratedConversionFunc((*core.Resources)(nil), (*Resources)(nil), func(a, b interface{}, scope conversion.Scope) error { + return Convert_core_Resources_To_v1alpha1_Resources(a.(*core.Resources), b.(*Resources), scope) + }); err != nil { + return err + } if err := s.AddGeneratedConversionFunc((*SecretReference)(nil), (*core.SecretReference)(nil), func(a, b interface{}, scope conversion.Scope) error { return Convert_v1alpha1_SecretReference_To_core_SecretReference(a.(*SecretReference), b.(*core.SecretReference), scope) }); err != nil { @@ -523,6 +633,116 @@ func Convert_core_AvailabilityInstance_To_v1alpha1_AvailabilityInstance(in *core return autoConvert_core_AvailabilityInstance_To_v1alpha1_AvailabilityInstance(in, out, s) } +func autoConvert_v1alpha1_Controller_To_core_Controller(in *Controller, out *core.Controller, s conversion.Scope) error { + out.Workers = in.Workers + return nil +} + +// Convert_v1alpha1_Controller_To_core_Controller is an autogenerated conversion function. +func Convert_v1alpha1_Controller_To_core_Controller(in *Controller, out *core.Controller, s conversion.Scope) error { + return autoConvert_v1alpha1_Controller_To_core_Controller(in, out, s) +} + +func autoConvert_core_Controller_To_v1alpha1_Controller(in *core.Controller, out *Controller, s conversion.Scope) error { + out.Workers = in.Workers + return nil +} + +// Convert_core_Controller_To_v1alpha1_Controller is an autogenerated conversion function. +func Convert_core_Controller_To_v1alpha1_Controller(in *core.Controller, out *Controller, s conversion.Scope) error { + return autoConvert_core_Controller_To_v1alpha1_Controller(in, out, s) +} + +func autoConvert_v1alpha1_Controllers_To_core_Controllers(in *Controllers, out *core.Controllers, s conversion.Scope) error { + out.Installations = (*core.Controller)(unsafe.Pointer(in.Installations)) + out.Executions = (*core.Controller)(unsafe.Pointer(in.Executions)) + return nil +} + +// Convert_v1alpha1_Controllers_To_core_Controllers is an autogenerated conversion function. +func Convert_v1alpha1_Controllers_To_core_Controllers(in *Controllers, out *core.Controllers, s conversion.Scope) error { + return autoConvert_v1alpha1_Controllers_To_core_Controllers(in, out, s) +} + +func autoConvert_core_Controllers_To_v1alpha1_Controllers(in *core.Controllers, out *Controllers, s conversion.Scope) error { + out.Installations = (*Controller)(unsafe.Pointer(in.Installations)) + out.Executions = (*Controller)(unsafe.Pointer(in.Executions)) + return nil +} + +// Convert_core_Controllers_To_v1alpha1_Controllers is an autogenerated conversion function. +func Convert_core_Controllers_To_v1alpha1_Controllers(in *core.Controllers, out *Controllers, s conversion.Scope) error { + return autoConvert_core_Controllers_To_v1alpha1_Controllers(in, out, s) +} + +func autoConvert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in *DeployItemTimeouts, out *core.DeployItemTimeouts, s conversion.Scope) error { + out.Pickup = in.Pickup + out.ProgressingDefault = in.ProgressingDefault + return nil +} + +// Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts is an autogenerated conversion function. +func Convert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in *DeployItemTimeouts, out *core.DeployItemTimeouts, s conversion.Scope) error { + return autoConvert_v1alpha1_DeployItemTimeouts_To_core_DeployItemTimeouts(in, out, s) +} + +func autoConvert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in *core.DeployItemTimeouts, out *DeployItemTimeouts, s conversion.Scope) error { + out.Pickup = in.Pickup + out.ProgressingDefault = in.ProgressingDefault + return nil +} + +// Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts is an autogenerated conversion function. +func Convert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in *core.DeployItemTimeouts, out *DeployItemTimeouts, s conversion.Scope) error { + return autoConvert_core_DeployItemTimeouts_To_v1alpha1_DeployItemTimeouts(in, out, s) +} + +func autoConvert_v1alpha1_Deployer_To_core_Deployer(in *Deployer, out *core.Deployer, s conversion.Scope) error { + out.Controller = (*core.Controller)(unsafe.Pointer(in.Controller)) + out.K8SClientSettings = (*core.K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + return nil +} + +// Convert_v1alpha1_Deployer_To_core_Deployer is an autogenerated conversion function. +func Convert_v1alpha1_Deployer_To_core_Deployer(in *Deployer, out *core.Deployer, s conversion.Scope) error { + return autoConvert_v1alpha1_Deployer_To_core_Deployer(in, out, s) +} + +func autoConvert_core_Deployer_To_v1alpha1_Deployer(in *core.Deployer, out *Deployer, s conversion.Scope) error { + out.Controller = (*Controller)(unsafe.Pointer(in.Controller)) + out.K8SClientSettings = (*K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + return nil +} + +// Convert_core_Deployer_To_v1alpha1_Deployer is an autogenerated conversion function. +func Convert_core_Deployer_To_v1alpha1_Deployer(in *core.Deployer, out *Deployer, s conversion.Scope) error { + return autoConvert_core_Deployer_To_v1alpha1_Deployer(in, out, s) +} + +func autoConvert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in *DeployerConfig, out *core.DeployerConfig, s conversion.Scope) error { + out.Deployer = (*core.Deployer)(unsafe.Pointer(in.Deployer)) + out.Resources = (*core.Resources)(unsafe.Pointer(in.Resources)) + out.HPA = (*core.HPA)(unsafe.Pointer(in.HPA)) + return nil +} + +// Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig is an autogenerated conversion function. +func Convert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in *DeployerConfig, out *core.DeployerConfig, s conversion.Scope) error { + return autoConvert_v1alpha1_DeployerConfig_To_core_DeployerConfig(in, out, s) +} + +func autoConvert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in *core.DeployerConfig, out *DeployerConfig, s conversion.Scope) error { + out.Deployer = (*Deployer)(unsafe.Pointer(in.Deployer)) + out.Resources = (*Resources)(unsafe.Pointer(in.Resources)) + out.HPA = (*HPA)(unsafe.Pointer(in.HPA)) + return nil +} + +// Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig is an autogenerated conversion function. +func Convert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in *core.DeployerConfig, out *DeployerConfig, s conversion.Scope) error { + return autoConvert_core_DeployerConfig_To_v1alpha1_DeployerConfig(in, out, s) +} + func autoConvert_v1alpha1_Error_To_core_Error(in *Error, out *core.Error, s conversion.Scope) error { out.Operation = in.Operation out.LastTransitionTime = in.LastTransitionTime @@ -551,6 +771,30 @@ func Convert_core_Error_To_v1alpha1_Error(in *core.Error, out *Error, s conversi return autoConvert_core_Error_To_v1alpha1_Error(in, out, s) } +func autoConvert_v1alpha1_HPA_To_core_HPA(in *HPA, out *core.HPA, s conversion.Scope) error { + out.MaxReplicas = in.MaxReplicas + out.AverageMemoryUtilization = in.AverageMemoryUtilization + out.AverageCpuUtilization = in.AverageCpuUtilization + return nil +} + +// Convert_v1alpha1_HPA_To_core_HPA is an autogenerated conversion function. +func Convert_v1alpha1_HPA_To_core_HPA(in *HPA, out *core.HPA, s conversion.Scope) error { + return autoConvert_v1alpha1_HPA_To_core_HPA(in, out, s) +} + +func autoConvert_core_HPA_To_v1alpha1_HPA(in *core.HPA, out *HPA, s conversion.Scope) error { + out.MaxReplicas = in.MaxReplicas + out.AverageMemoryUtilization = in.AverageMemoryUtilization + out.AverageCpuUtilization = in.AverageCpuUtilization + return nil +} + +// Convert_core_HPA_To_v1alpha1_HPA is an autogenerated conversion function. +func Convert_core_HPA_To_v1alpha1_HPA(in *core.HPA, out *HPA, s conversion.Scope) error { + return autoConvert_core_HPA_To_v1alpha1_HPA(in, out, s) +} + func autoConvert_v1alpha1_HighAvailabilityConfig_To_core_HighAvailabilityConfig(in *HighAvailabilityConfig, out *core.HighAvailabilityConfig, s conversion.Scope) error { out.ControlPlaneFailureTolerance = in.ControlPlaneFailureTolerance return nil @@ -707,8 +951,81 @@ func Convert_core_InstanceStatus_To_v1alpha1_InstanceStatus(in *core.InstanceSta return autoConvert_core_InstanceStatus_To_v1alpha1_InstanceStatus(in, out, s) } +func autoConvert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in *K8SClientLimits, out *core.K8SClientLimits, s conversion.Scope) error { + out.Burst = in.Burst + out.QPS = in.QPS + return nil +} + +// Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits is an autogenerated conversion function. +func Convert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in *K8SClientLimits, out *core.K8SClientLimits, s conversion.Scope) error { + return autoConvert_v1alpha1_K8SClientLimits_To_core_K8SClientLimits(in, out, s) +} + +func autoConvert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in *core.K8SClientLimits, out *K8SClientLimits, s conversion.Scope) error { + out.Burst = in.Burst + out.QPS = in.QPS + return nil +} + +// Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits is an autogenerated conversion function. +func Convert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in *core.K8SClientLimits, out *K8SClientLimits, s conversion.Scope) error { + return autoConvert_core_K8SClientLimits_To_v1alpha1_K8SClientLimits(in, out, s) +} + +func autoConvert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in *K8SClientSettings, out *core.K8SClientSettings, s conversion.Scope) error { + out.HostClient = (*core.K8SClientLimits)(unsafe.Pointer(in.HostClient)) + out.ResourceClient = (*core.K8SClientLimits)(unsafe.Pointer(in.ResourceClient)) + return nil +} + +// Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings is an autogenerated conversion function. +func Convert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in *K8SClientSettings, out *core.K8SClientSettings, s conversion.Scope) error { + return autoConvert_v1alpha1_K8SClientSettings_To_core_K8SClientSettings(in, out, s) +} + +func autoConvert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in *core.K8SClientSettings, out *K8SClientSettings, s conversion.Scope) error { + out.HostClient = (*K8SClientLimits)(unsafe.Pointer(in.HostClient)) + out.ResourceClient = (*K8SClientLimits)(unsafe.Pointer(in.ResourceClient)) + return nil +} + +// Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings is an autogenerated conversion function. +func Convert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in *core.K8SClientSettings, out *K8SClientSettings, s conversion.Scope) error { + return autoConvert_core_K8SClientSettings_To_v1alpha1_K8SClientSettings(in, out, s) +} + +func autoConvert_v1alpha1_Landscaper_To_core_Landscaper(in *Landscaper, out *core.Landscaper, s conversion.Scope) error { + out.Controllers = (*core.Controllers)(unsafe.Pointer(in.Controllers)) + out.K8SClientSettings = (*core.K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + out.DeployItemTimeouts = (*core.DeployItemTimeouts)(unsafe.Pointer(in.DeployItemTimeouts)) + return nil +} + +// Convert_v1alpha1_Landscaper_To_core_Landscaper is an autogenerated conversion function. +func Convert_v1alpha1_Landscaper_To_core_Landscaper(in *Landscaper, out *core.Landscaper, s conversion.Scope) error { + return autoConvert_v1alpha1_Landscaper_To_core_Landscaper(in, out, s) +} + +func autoConvert_core_Landscaper_To_v1alpha1_Landscaper(in *core.Landscaper, out *Landscaper, s conversion.Scope) error { + out.Controllers = (*Controllers)(unsafe.Pointer(in.Controllers)) + out.K8SClientSettings = (*K8SClientSettings)(unsafe.Pointer(in.K8SClientSettings)) + out.DeployItemTimeouts = (*DeployItemTimeouts)(unsafe.Pointer(in.DeployItemTimeouts)) + return nil +} + +// Convert_core_Landscaper_To_v1alpha1_Landscaper is an autogenerated conversion function. +func Convert_core_Landscaper_To_v1alpha1_Landscaper(in *core.Landscaper, out *Landscaper, s conversion.Scope) error { + return autoConvert_core_Landscaper_To_v1alpha1_Landscaper(in, out, s) +} + func autoConvert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(in *LandscaperConfiguration, out *core.LandscaperConfiguration, s conversion.Scope) error { + out.Landscaper = (*core.Landscaper)(unsafe.Pointer(in.Landscaper)) + out.Resources = (*core.Resources)(unsafe.Pointer(in.Resources)) + out.ResourcesMain = (*core.Resources)(unsafe.Pointer(in.ResourcesMain)) + out.HPAMain = (*core.HPA)(unsafe.Pointer(in.HPAMain)) out.Deployers = *(*[]string)(unsafe.Pointer(&in.Deployers)) + out.DeployersConfig = *(*map[string]*core.DeployerConfig)(unsafe.Pointer(&in.DeployersConfig)) return nil } @@ -718,7 +1035,12 @@ func Convert_v1alpha1_LandscaperConfiguration_To_core_LandscaperConfiguration(in } func autoConvert_core_LandscaperConfiguration_To_v1alpha1_LandscaperConfiguration(in *core.LandscaperConfiguration, out *LandscaperConfiguration, s conversion.Scope) error { + out.Landscaper = (*Landscaper)(unsafe.Pointer(in.Landscaper)) + out.Resources = (*Resources)(unsafe.Pointer(in.Resources)) + out.ResourcesMain = (*Resources)(unsafe.Pointer(in.ResourcesMain)) + out.HPAMain = (*HPA)(unsafe.Pointer(in.HPAMain)) out.Deployers = *(*[]string)(unsafe.Pointer(&in.Deployers)) + out.DeployersConfig = *(*map[string]*DeployerConfig)(unsafe.Pointer(&in.DeployersConfig)) return nil } @@ -1001,6 +1323,52 @@ func Convert_core_ObjectReference_To_v1alpha1_ObjectReference(in *core.ObjectRef return autoConvert_core_ObjectReference_To_v1alpha1_ObjectReference(in, out, s) } +func autoConvert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in *ResourceRequests, out *core.ResourceRequests, s conversion.Scope) error { + out.CPU = in.CPU + out.Memory = in.Memory + return nil +} + +// Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests is an autogenerated conversion function. +func Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in *ResourceRequests, out *core.ResourceRequests, s conversion.Scope) error { + return autoConvert_v1alpha1_ResourceRequests_To_core_ResourceRequests(in, out, s) +} + +func autoConvert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in *core.ResourceRequests, out *ResourceRequests, s conversion.Scope) error { + out.CPU = in.CPU + out.Memory = in.Memory + return nil +} + +// Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests is an autogenerated conversion function. +func Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in *core.ResourceRequests, out *ResourceRequests, s conversion.Scope) error { + return autoConvert_core_ResourceRequests_To_v1alpha1_ResourceRequests(in, out, s) +} + +func autoConvert_v1alpha1_Resources_To_core_Resources(in *Resources, out *core.Resources, s conversion.Scope) error { + if err := Convert_v1alpha1_ResourceRequests_To_core_ResourceRequests(&in.Requests, &out.Requests, s); err != nil { + return err + } + return nil +} + +// Convert_v1alpha1_Resources_To_core_Resources is an autogenerated conversion function. +func Convert_v1alpha1_Resources_To_core_Resources(in *Resources, out *core.Resources, s conversion.Scope) error { + return autoConvert_v1alpha1_Resources_To_core_Resources(in, out, s) +} + +func autoConvert_core_Resources_To_v1alpha1_Resources(in *core.Resources, out *Resources, s conversion.Scope) error { + if err := Convert_core_ResourceRequests_To_v1alpha1_ResourceRequests(&in.Requests, &out.Requests, s); err != nil { + return err + } + return nil +} + +// Convert_core_Resources_To_v1alpha1_Resources is an autogenerated conversion function. +func Convert_core_Resources_To_v1alpha1_Resources(in *core.Resources, out *Resources, s conversion.Scope) error { + return autoConvert_core_Resources_To_v1alpha1_Resources(in, out, s) +} + func autoConvert_v1alpha1_SecretReference_To_core_SecretReference(in *SecretReference, out *core.SecretReference, s conversion.Scope) error { if err := Convert_v1alpha1_ObjectReference_To_core_ObjectReference(&in.ObjectReference, &out.ObjectReference, s); err != nil { return err diff --git a/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go index 86718f709..2fc513605 100644 --- a/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/core/v1alpha1/zz_generated.deepcopy.go @@ -154,6 +154,121 @@ func (in *AvailabilityInstance) DeepCopy() *AvailabilityInstance { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controller) DeepCopyInto(out *Controller) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller. +func (in *Controller) DeepCopy() *Controller { + if in == nil { + return nil + } + out := new(Controller) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controllers) DeepCopyInto(out *Controllers) { + *out = *in + if in.Installations != nil { + in, out := &in.Installations, &out.Installations + *out = new(Controller) + **out = **in + } + if in.Executions != nil { + in, out := &in.Executions, &out.Executions + *out = new(Controller) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controllers. +func (in *Controllers) DeepCopy() *Controllers { + if in == nil { + return nil + } + out := new(Controllers) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployItemTimeouts) DeepCopyInto(out *DeployItemTimeouts) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployItemTimeouts. +func (in *DeployItemTimeouts) DeepCopy() *DeployItemTimeouts { + if in == nil { + return nil + } + out := new(DeployItemTimeouts) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Deployer) DeepCopyInto(out *Deployer) { + *out = *in + if in.Controller != nil { + in, out := &in.Controller, &out.Controller + *out = new(Controller) + **out = **in + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployer. +func (in *Deployer) DeepCopy() *Deployer { + if in == nil { + return nil + } + out := new(Deployer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployerConfig) DeepCopyInto(out *DeployerConfig) { + *out = *in + if in.Deployer != nil { + in, out := &in.Deployer, &out.Deployer + *out = new(Deployer) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.HPA != nil { + in, out := &in.HPA, &out.HPA + *out = new(HPA) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployerConfig. +func (in *DeployerConfig) DeepCopy() *DeployerConfig { + if in == nil { + return nil + } + out := new(DeployerConfig) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Error) DeepCopyInto(out *Error) { *out = *in @@ -172,6 +287,22 @@ func (in *Error) DeepCopy() *Error { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPA) DeepCopyInto(out *HPA) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPA. +func (in *HPA) DeepCopy() *HPA { + if in == nil { + return nil + } + out := new(HPA) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityConfig) DeepCopyInto(out *HighAvailabilityConfig) { *out = *in @@ -328,14 +459,122 @@ func (in *InstanceStatus) DeepCopy() *InstanceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientLimits) DeepCopyInto(out *K8SClientLimits) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientLimits. +func (in *K8SClientLimits) DeepCopy() *K8SClientLimits { + if in == nil { + return nil + } + out := new(K8SClientLimits) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientSettings) DeepCopyInto(out *K8SClientSettings) { + *out = *in + if in.HostClient != nil { + in, out := &in.HostClient, &out.HostClient + *out = new(K8SClientLimits) + **out = **in + } + if in.ResourceClient != nil { + in, out := &in.ResourceClient, &out.ResourceClient + *out = new(K8SClientLimits) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientSettings. +func (in *K8SClientSettings) DeepCopy() *K8SClientSettings { + if in == nil { + return nil + } + out := new(K8SClientSettings) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Landscaper) DeepCopyInto(out *Landscaper) { + *out = *in + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = new(Controllers) + (*in).DeepCopyInto(*out) + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + if in.DeployItemTimeouts != nil { + in, out := &in.DeployItemTimeouts, &out.DeployItemTimeouts + *out = new(DeployItemTimeouts) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Landscaper. +func (in *Landscaper) DeepCopy() *Landscaper { + if in == nil { + return nil + } + out := new(Landscaper) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LandscaperConfiguration) DeepCopyInto(out *LandscaperConfiguration) { *out = *in + if in.Landscaper != nil { + in, out := &in.Landscaper, &out.Landscaper + *out = new(Landscaper) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.ResourcesMain != nil { + in, out := &in.ResourcesMain, &out.ResourcesMain + *out = new(Resources) + **out = **in + } + if in.HPAMain != nil { + in, out := &in.HPAMain, &out.HPAMain + *out = new(HPA) + **out = **in + } if in.Deployers != nil { in, out := &in.Deployers, &out.Deployers *out = make([]string, len(*in)) copy(*out, *in) } + if in.DeployersConfig != nil { + in, out := &in.DeployersConfig, &out.DeployersConfig + *out = make(map[string]*DeployerConfig, len(*in)) + for key, val := range *in { + var outVal *DeployerConfig + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(DeployerConfig) + (*in).DeepCopyInto(*out) + } + (*out)[key] = outVal + } + } return } @@ -609,6 +848,39 @@ func (in *ObjectReference) DeepCopy() *ObjectReference { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequests. +func (in *ResourceRequests) DeepCopy() *ResourceRequests { + if in == nil { + return nil + } + out := new(ResourceRequests) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Resources) DeepCopyInto(out *Resources) { + *out = *in + out.Requests = in.Requests + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources. +func (in *Resources) DeepCopy() *Resources { + if in == nil { + return nil + } + out := new(Resources) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretReference) DeepCopyInto(out *SecretReference) { *out = *in diff --git a/pkg/apis/core/zz_generated.deepcopy.go b/pkg/apis/core/zz_generated.deepcopy.go index 3b0b2c6fe..b2c931779 100644 --- a/pkg/apis/core/zz_generated.deepcopy.go +++ b/pkg/apis/core/zz_generated.deepcopy.go @@ -154,6 +154,121 @@ func (in *AvailabilityInstance) DeepCopy() *AvailabilityInstance { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controller) DeepCopyInto(out *Controller) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller. +func (in *Controller) DeepCopy() *Controller { + if in == nil { + return nil + } + out := new(Controller) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Controllers) DeepCopyInto(out *Controllers) { + *out = *in + if in.Installations != nil { + in, out := &in.Installations, &out.Installations + *out = new(Controller) + **out = **in + } + if in.Executions != nil { + in, out := &in.Executions, &out.Executions + *out = new(Controller) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controllers. +func (in *Controllers) DeepCopy() *Controllers { + if in == nil { + return nil + } + out := new(Controllers) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployItemTimeouts) DeepCopyInto(out *DeployItemTimeouts) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployItemTimeouts. +func (in *DeployItemTimeouts) DeepCopy() *DeployItemTimeouts { + if in == nil { + return nil + } + out := new(DeployItemTimeouts) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Deployer) DeepCopyInto(out *Deployer) { + *out = *in + if in.Controller != nil { + in, out := &in.Controller, &out.Controller + *out = new(Controller) + **out = **in + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployer. +func (in *Deployer) DeepCopy() *Deployer { + if in == nil { + return nil + } + out := new(Deployer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DeployerConfig) DeepCopyInto(out *DeployerConfig) { + *out = *in + if in.Deployer != nil { + in, out := &in.Deployer, &out.Deployer + *out = new(Deployer) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.HPA != nil { + in, out := &in.HPA, &out.HPA + *out = new(HPA) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployerConfig. +func (in *DeployerConfig) DeepCopy() *DeployerConfig { + if in == nil { + return nil + } + out := new(DeployerConfig) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Error) DeepCopyInto(out *Error) { *out = *in @@ -172,6 +287,22 @@ func (in *Error) DeepCopy() *Error { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HPA) DeepCopyInto(out *HPA) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HPA. +func (in *HPA) DeepCopy() *HPA { + if in == nil { + return nil + } + out := new(HPA) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *HighAvailabilityConfig) DeepCopyInto(out *HighAvailabilityConfig) { *out = *in @@ -328,14 +459,122 @@ func (in *InstanceStatus) DeepCopy() *InstanceStatus { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientLimits) DeepCopyInto(out *K8SClientLimits) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientLimits. +func (in *K8SClientLimits) DeepCopy() *K8SClientLimits { + if in == nil { + return nil + } + out := new(K8SClientLimits) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *K8SClientSettings) DeepCopyInto(out *K8SClientSettings) { + *out = *in + if in.HostClient != nil { + in, out := &in.HostClient, &out.HostClient + *out = new(K8SClientLimits) + **out = **in + } + if in.ResourceClient != nil { + in, out := &in.ResourceClient, &out.ResourceClient + *out = new(K8SClientLimits) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new K8SClientSettings. +func (in *K8SClientSettings) DeepCopy() *K8SClientSettings { + if in == nil { + return nil + } + out := new(K8SClientSettings) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Landscaper) DeepCopyInto(out *Landscaper) { + *out = *in + if in.Controllers != nil { + in, out := &in.Controllers, &out.Controllers + *out = new(Controllers) + (*in).DeepCopyInto(*out) + } + if in.K8SClientSettings != nil { + in, out := &in.K8SClientSettings, &out.K8SClientSettings + *out = new(K8SClientSettings) + (*in).DeepCopyInto(*out) + } + if in.DeployItemTimeouts != nil { + in, out := &in.DeployItemTimeouts, &out.DeployItemTimeouts + *out = new(DeployItemTimeouts) + **out = **in + } + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Landscaper. +func (in *Landscaper) DeepCopy() *Landscaper { + if in == nil { + return nil + } + out := new(Landscaper) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *LandscaperConfiguration) DeepCopyInto(out *LandscaperConfiguration) { *out = *in + if in.Landscaper != nil { + in, out := &in.Landscaper, &out.Landscaper + *out = new(Landscaper) + (*in).DeepCopyInto(*out) + } + if in.Resources != nil { + in, out := &in.Resources, &out.Resources + *out = new(Resources) + **out = **in + } + if in.ResourcesMain != nil { + in, out := &in.ResourcesMain, &out.ResourcesMain + *out = new(Resources) + **out = **in + } + if in.HPAMain != nil { + in, out := &in.HPAMain, &out.HPAMain + *out = new(HPA) + **out = **in + } if in.Deployers != nil { in, out := &in.Deployers, &out.Deployers *out = make([]string, len(*in)) copy(*out, *in) } + if in.DeployersConfig != nil { + in, out := &in.DeployersConfig, &out.DeployersConfig + *out = make(map[string]*DeployerConfig, len(*in)) + for key, val := range *in { + var outVal *DeployerConfig + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(DeployerConfig) + (*in).DeepCopyInto(*out) + } + (*out)[key] = outVal + } + } return } @@ -609,6 +848,39 @@ func (in *ObjectReference) DeepCopy() *ObjectReference { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRequests. +func (in *ResourceRequests) DeepCopy() *ResourceRequests { + if in == nil { + return nil + } + out := new(ResourceRequests) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Resources) DeepCopyInto(out *Resources) { + *out = *in + out.Requests = in.Requests + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources. +func (in *Resources) DeepCopy() *Resources { + if in == nil { + return nil + } + out := new(Resources) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecretReference) DeepCopyInto(out *SecretReference) { *out = *in diff --git a/pkg/apis/installation/installation.go b/pkg/apis/installation/installation.go index 5ade4fbe1..ade334aef 100644 --- a/pkg/apis/installation/installation.go +++ b/pkg/apis/installation/installation.go @@ -112,7 +112,11 @@ type Landscaper struct { // Verbosity defines the logging verbosity level. Verbosity string `json:"verbosity,omitempty"` // Replicas defines the number of replicas for the landscaper controller deployment. - Replicas int `json:"replicas,omitempty"` + Replicas int `json:"replicas,omitempty"` + Controllers *lssv1alpha1.Controllers `json:"controllers,omitempty"` + DeployItemTimeouts *lssv1alpha1.DeployItemTimeouts `json:"deployItemTimeouts,omitempty"` + // K8SClientSettings defines k8s client settings like burst and qps. + K8SClientSettings *lssv1alpha1.K8SClientSettings `json:"k8sClientSettings,omitempty"` } // Webhooks specifies the landscaper webhooks server configuration. @@ -128,11 +132,14 @@ type LandscaperConfig struct { // Landscaper specifies the landscaper controller configuration. Landscaper Landscaper `json:"landscaper"` // Webhooks specifies the landscaper webhooks server configuration. - Webhooks Webhooks `json:"webhooksServer"` + Webhooks Webhooks `json:"webhooksServer"` + Resources *lssv1alpha1.Resources `json:"resources,omitempty"` + ResourcesMain *lssv1alpha1.Resources `json:"resourcesMain,omitempty"` + HPAMain *lssv1alpha1.HPA `json:"hpaMain,omitempty"` // Deployers specifies the list of landscaper standard deployers that are getting installed. Deployers []string `json:"deployers"` // DeployersConfig specifies the configuration for the landscaper standard deployers. - DeployersConfig lsv1alpha1.AnyJSON `json:"deployersConfig,omitempty"` + DeployersConfig map[string]*lssv1alpha1.DeployerConfig `json:"deployersConfig,omitempty"` } // NewLandscaperConfig creates a new landscaper configuration initialized with default values. @@ -146,8 +153,7 @@ func NewLandscaperConfig() *LandscaperConfig { ServicePort: WebhooksServicePortDefault, Replicas: 2, }, - Deployers: make([]string, 0), - DeployersConfig: lsv1alpha1.NewAnyJSON([]byte("{}")), + Deployers: make([]string, 0), } return c } diff --git a/pkg/apis/openapi/openapi_generated.go b/pkg/apis/openapi/openapi_generated.go index 9bf2d4289..b4df70bb5 100644 --- a/pkg/apis/openapi/openapi_generated.go +++ b/pkg/apis/openapi/openapi_generated.go @@ -28,12 +28,21 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.AvailabilityCollectionSpec": schema_pkg_apis_core_v1alpha1_AvailabilityCollectionSpec(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.AvailabilityCollectionStatus": schema_pkg_apis_core_v1alpha1_AvailabilityCollectionStatus(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.AvailabilityInstance": schema_pkg_apis_core_v1alpha1_AvailabilityInstance(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller": schema_pkg_apis_core_v1alpha1_Controller(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controllers": schema_pkg_apis_core_v1alpha1_Controllers(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployItemTimeouts": schema_pkg_apis_core_v1alpha1_DeployItemTimeouts(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Deployer": schema_pkg_apis_core_v1alpha1_Deployer(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployerConfig": schema_pkg_apis_core_v1alpha1_DeployerConfig(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Error": schema_pkg_apis_core_v1alpha1_Error(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HPA": schema_pkg_apis_core_v1alpha1_HPA(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HighAvailabilityConfig": schema_pkg_apis_core_v1alpha1_HighAvailabilityConfig(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Instance": schema_pkg_apis_core_v1alpha1_Instance(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.InstanceList": schema_pkg_apis_core_v1alpha1_InstanceList(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.InstanceSpec": schema_pkg_apis_core_v1alpha1_InstanceSpec(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.InstanceStatus": schema_pkg_apis_core_v1alpha1_InstanceStatus(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientLimits": schema_pkg_apis_core_v1alpha1_K8SClientLimits(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientSettings": schema_pkg_apis_core_v1alpha1_K8SClientSettings(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Landscaper": schema_pkg_apis_core_v1alpha1_Landscaper(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.LandscaperConfiguration": schema_pkg_apis_core_v1alpha1_LandscaperConfiguration(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.LandscaperDeployment": schema_pkg_apis_core_v1alpha1_LandscaperDeployment(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.LandscaperDeploymentList": schema_pkg_apis_core_v1alpha1_LandscaperDeploymentList(ref), @@ -46,6 +55,8 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.NamespaceRegistrationStatus": schema_pkg_apis_core_v1alpha1_NamespaceRegistrationStatus(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.OIDCConfig": schema_pkg_apis_core_v1alpha1_OIDCConfig(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ObjectReference": schema_pkg_apis_core_v1alpha1_ObjectReference(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ResourceRequests": schema_pkg_apis_core_v1alpha1_ResourceRequests(ref), + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources": schema_pkg_apis_core_v1alpha1_Resources(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.SecretReference": schema_pkg_apis_core_v1alpha1_SecretReference(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ServiceTargetConfig": schema_pkg_apis_core_v1alpha1_ServiceTargetConfig(ref), "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ServiceTargetConfigList": schema_pkg_apis_core_v1alpha1_ServiceTargetConfigList(ref), @@ -164,267 +175,267 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "k8s.io/api/core/v1.AzureDiskVolumeSource": schema_k8sio_api_core_v1_AzureDiskVolumeSource(ref), "k8s.io/api/core/v1.AzureFilePersistentVolumeSource": schema_k8sio_api_core_v1_AzureFilePersistentVolumeSource(ref), "k8s.io/api/core/v1.AzureFileVolumeSource": schema_k8sio_api_core_v1_AzureFileVolumeSource(ref), - "k8s.io/api/core/v1.Binding": schema_k8sio_api_core_v1_Binding(ref), - "k8s.io/api/core/v1.CSIPersistentVolumeSource": schema_k8sio_api_core_v1_CSIPersistentVolumeSource(ref), - "k8s.io/api/core/v1.CSIVolumeSource": schema_k8sio_api_core_v1_CSIVolumeSource(ref), - "k8s.io/api/core/v1.Capabilities": schema_k8sio_api_core_v1_Capabilities(ref), - "k8s.io/api/core/v1.CephFSPersistentVolumeSource": schema_k8sio_api_core_v1_CephFSPersistentVolumeSource(ref), - "k8s.io/api/core/v1.CephFSVolumeSource": schema_k8sio_api_core_v1_CephFSVolumeSource(ref), - "k8s.io/api/core/v1.CinderPersistentVolumeSource": schema_k8sio_api_core_v1_CinderPersistentVolumeSource(ref), - "k8s.io/api/core/v1.CinderVolumeSource": schema_k8sio_api_core_v1_CinderVolumeSource(ref), - "k8s.io/api/core/v1.ClaimSource": schema_k8sio_api_core_v1_ClaimSource(ref), - "k8s.io/api/core/v1.ClientIPConfig": schema_k8sio_api_core_v1_ClientIPConfig(ref), - "k8s.io/api/core/v1.ComponentCondition": schema_k8sio_api_core_v1_ComponentCondition(ref), - "k8s.io/api/core/v1.ComponentStatus": schema_k8sio_api_core_v1_ComponentStatus(ref), - "k8s.io/api/core/v1.ComponentStatusList": schema_k8sio_api_core_v1_ComponentStatusList(ref), - "k8s.io/api/core/v1.ConfigMap": schema_k8sio_api_core_v1_ConfigMap(ref), - "k8s.io/api/core/v1.ConfigMapEnvSource": schema_k8sio_api_core_v1_ConfigMapEnvSource(ref), - "k8s.io/api/core/v1.ConfigMapKeySelector": schema_k8sio_api_core_v1_ConfigMapKeySelector(ref), - "k8s.io/api/core/v1.ConfigMapList": schema_k8sio_api_core_v1_ConfigMapList(ref), - "k8s.io/api/core/v1.ConfigMapNodeConfigSource": schema_k8sio_api_core_v1_ConfigMapNodeConfigSource(ref), - "k8s.io/api/core/v1.ConfigMapProjection": schema_k8sio_api_core_v1_ConfigMapProjection(ref), - "k8s.io/api/core/v1.ConfigMapVolumeSource": schema_k8sio_api_core_v1_ConfigMapVolumeSource(ref), - "k8s.io/api/core/v1.Container": schema_k8sio_api_core_v1_Container(ref), - "k8s.io/api/core/v1.ContainerImage": schema_k8sio_api_core_v1_ContainerImage(ref), - "k8s.io/api/core/v1.ContainerPort": schema_k8sio_api_core_v1_ContainerPort(ref), - "k8s.io/api/core/v1.ContainerResizePolicy": schema_k8sio_api_core_v1_ContainerResizePolicy(ref), - "k8s.io/api/core/v1.ContainerState": schema_k8sio_api_core_v1_ContainerState(ref), - "k8s.io/api/core/v1.ContainerStateRunning": schema_k8sio_api_core_v1_ContainerStateRunning(ref), - "k8s.io/api/core/v1.ContainerStateTerminated": schema_k8sio_api_core_v1_ContainerStateTerminated(ref), - "k8s.io/api/core/v1.ContainerStateWaiting": schema_k8sio_api_core_v1_ContainerStateWaiting(ref), - "k8s.io/api/core/v1.ContainerStatus": schema_k8sio_api_core_v1_ContainerStatus(ref), - "k8s.io/api/core/v1.DaemonEndpoint": schema_k8sio_api_core_v1_DaemonEndpoint(ref), - "k8s.io/api/core/v1.DownwardAPIProjection": schema_k8sio_api_core_v1_DownwardAPIProjection(ref), - "k8s.io/api/core/v1.DownwardAPIVolumeFile": schema_k8sio_api_core_v1_DownwardAPIVolumeFile(ref), - "k8s.io/api/core/v1.DownwardAPIVolumeSource": schema_k8sio_api_core_v1_DownwardAPIVolumeSource(ref), - "k8s.io/api/core/v1.EmptyDirVolumeSource": schema_k8sio_api_core_v1_EmptyDirVolumeSource(ref), - "k8s.io/api/core/v1.EndpointAddress": schema_k8sio_api_core_v1_EndpointAddress(ref), - "k8s.io/api/core/v1.EndpointPort": schema_k8sio_api_core_v1_EndpointPort(ref), - "k8s.io/api/core/v1.EndpointSubset": schema_k8sio_api_core_v1_EndpointSubset(ref), - "k8s.io/api/core/v1.Endpoints": schema_k8sio_api_core_v1_Endpoints(ref), - "k8s.io/api/core/v1.EndpointsList": schema_k8sio_api_core_v1_EndpointsList(ref), - "k8s.io/api/core/v1.EnvFromSource": schema_k8sio_api_core_v1_EnvFromSource(ref), - "k8s.io/api/core/v1.EnvVar": schema_k8sio_api_core_v1_EnvVar(ref), - "k8s.io/api/core/v1.EnvVarSource": schema_k8sio_api_core_v1_EnvVarSource(ref), - "k8s.io/api/core/v1.EphemeralContainer": schema_k8sio_api_core_v1_EphemeralContainer(ref), - "k8s.io/api/core/v1.EphemeralContainerCommon": schema_k8sio_api_core_v1_EphemeralContainerCommon(ref), - "k8s.io/api/core/v1.EphemeralVolumeSource": schema_k8sio_api_core_v1_EphemeralVolumeSource(ref), - "k8s.io/api/core/v1.Event": schema_k8sio_api_core_v1_Event(ref), - "k8s.io/api/core/v1.EventList": schema_k8sio_api_core_v1_EventList(ref), - "k8s.io/api/core/v1.EventSeries": schema_k8sio_api_core_v1_EventSeries(ref), - "k8s.io/api/core/v1.EventSource": schema_k8sio_api_core_v1_EventSource(ref), - "k8s.io/api/core/v1.ExecAction": schema_k8sio_api_core_v1_ExecAction(ref), - "k8s.io/api/core/v1.FCVolumeSource": schema_k8sio_api_core_v1_FCVolumeSource(ref), - "k8s.io/api/core/v1.FlexPersistentVolumeSource": schema_k8sio_api_core_v1_FlexPersistentVolumeSource(ref), - "k8s.io/api/core/v1.FlexVolumeSource": schema_k8sio_api_core_v1_FlexVolumeSource(ref), - "k8s.io/api/core/v1.FlockerVolumeSource": schema_k8sio_api_core_v1_FlockerVolumeSource(ref), - "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource": schema_k8sio_api_core_v1_GCEPersistentDiskVolumeSource(ref), - "k8s.io/api/core/v1.GRPCAction": schema_k8sio_api_core_v1_GRPCAction(ref), - "k8s.io/api/core/v1.GitRepoVolumeSource": schema_k8sio_api_core_v1_GitRepoVolumeSource(ref), - "k8s.io/api/core/v1.GlusterfsPersistentVolumeSource": schema_k8sio_api_core_v1_GlusterfsPersistentVolumeSource(ref), - "k8s.io/api/core/v1.GlusterfsVolumeSource": schema_k8sio_api_core_v1_GlusterfsVolumeSource(ref), - "k8s.io/api/core/v1.HTTPGetAction": schema_k8sio_api_core_v1_HTTPGetAction(ref), - "k8s.io/api/core/v1.HTTPHeader": schema_k8sio_api_core_v1_HTTPHeader(ref), - "k8s.io/api/core/v1.HostAlias": schema_k8sio_api_core_v1_HostAlias(ref), - "k8s.io/api/core/v1.HostPathVolumeSource": schema_k8sio_api_core_v1_HostPathVolumeSource(ref), - "k8s.io/api/core/v1.ISCSIPersistentVolumeSource": schema_k8sio_api_core_v1_ISCSIPersistentVolumeSource(ref), - "k8s.io/api/core/v1.ISCSIVolumeSource": schema_k8sio_api_core_v1_ISCSIVolumeSource(ref), - "k8s.io/api/core/v1.KeyToPath": schema_k8sio_api_core_v1_KeyToPath(ref), - "k8s.io/api/core/v1.Lifecycle": schema_k8sio_api_core_v1_Lifecycle(ref), - "k8s.io/api/core/v1.LifecycleHandler": schema_k8sio_api_core_v1_LifecycleHandler(ref), - "k8s.io/api/core/v1.LimitRange": schema_k8sio_api_core_v1_LimitRange(ref), - "k8s.io/api/core/v1.LimitRangeItem": schema_k8sio_api_core_v1_LimitRangeItem(ref), - "k8s.io/api/core/v1.LimitRangeList": schema_k8sio_api_core_v1_LimitRangeList(ref), - "k8s.io/api/core/v1.LimitRangeSpec": schema_k8sio_api_core_v1_LimitRangeSpec(ref), - "k8s.io/api/core/v1.List": schema_k8sio_api_core_v1_List(ref), - "k8s.io/api/core/v1.LoadBalancerIngress": schema_k8sio_api_core_v1_LoadBalancerIngress(ref), - "k8s.io/api/core/v1.LoadBalancerStatus": schema_k8sio_api_core_v1_LoadBalancerStatus(ref), - "k8s.io/api/core/v1.LocalObjectReference": schema_k8sio_api_core_v1_LocalObjectReference(ref), - "k8s.io/api/core/v1.LocalVolumeSource": schema_k8sio_api_core_v1_LocalVolumeSource(ref), - "k8s.io/api/core/v1.NFSVolumeSource": schema_k8sio_api_core_v1_NFSVolumeSource(ref), - "k8s.io/api/core/v1.Namespace": schema_k8sio_api_core_v1_Namespace(ref), - "k8s.io/api/core/v1.NamespaceCondition": schema_k8sio_api_core_v1_NamespaceCondition(ref), - "k8s.io/api/core/v1.NamespaceList": schema_k8sio_api_core_v1_NamespaceList(ref), - "k8s.io/api/core/v1.NamespaceSpec": schema_k8sio_api_core_v1_NamespaceSpec(ref), - "k8s.io/api/core/v1.NamespaceStatus": schema_k8sio_api_core_v1_NamespaceStatus(ref), - "k8s.io/api/core/v1.Node": schema_k8sio_api_core_v1_Node(ref), - "k8s.io/api/core/v1.NodeAddress": schema_k8sio_api_core_v1_NodeAddress(ref), - "k8s.io/api/core/v1.NodeAffinity": schema_k8sio_api_core_v1_NodeAffinity(ref), - "k8s.io/api/core/v1.NodeCondition": schema_k8sio_api_core_v1_NodeCondition(ref), - "k8s.io/api/core/v1.NodeConfigSource": schema_k8sio_api_core_v1_NodeConfigSource(ref), - "k8s.io/api/core/v1.NodeConfigStatus": schema_k8sio_api_core_v1_NodeConfigStatus(ref), - "k8s.io/api/core/v1.NodeDaemonEndpoints": schema_k8sio_api_core_v1_NodeDaemonEndpoints(ref), - "k8s.io/api/core/v1.NodeList": schema_k8sio_api_core_v1_NodeList(ref), - "k8s.io/api/core/v1.NodeProxyOptions": schema_k8sio_api_core_v1_NodeProxyOptions(ref), - "k8s.io/api/core/v1.NodeResources": schema_k8sio_api_core_v1_NodeResources(ref), - "k8s.io/api/core/v1.NodeSelector": schema_k8sio_api_core_v1_NodeSelector(ref), - "k8s.io/api/core/v1.NodeSelectorRequirement": schema_k8sio_api_core_v1_NodeSelectorRequirement(ref), - "k8s.io/api/core/v1.NodeSelectorTerm": schema_k8sio_api_core_v1_NodeSelectorTerm(ref), - "k8s.io/api/core/v1.NodeSpec": schema_k8sio_api_core_v1_NodeSpec(ref), - "k8s.io/api/core/v1.NodeStatus": schema_k8sio_api_core_v1_NodeStatus(ref), - "k8s.io/api/core/v1.NodeSystemInfo": schema_k8sio_api_core_v1_NodeSystemInfo(ref), - "k8s.io/api/core/v1.ObjectFieldSelector": schema_k8sio_api_core_v1_ObjectFieldSelector(ref), - "k8s.io/api/core/v1.ObjectReference": schema_k8sio_api_core_v1_ObjectReference(ref), - "k8s.io/api/core/v1.PersistentVolume": schema_k8sio_api_core_v1_PersistentVolume(ref), - "k8s.io/api/core/v1.PersistentVolumeClaim": schema_k8sio_api_core_v1_PersistentVolumeClaim(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimCondition": schema_k8sio_api_core_v1_PersistentVolumeClaimCondition(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimList": schema_k8sio_api_core_v1_PersistentVolumeClaimList(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimSpec": schema_k8sio_api_core_v1_PersistentVolumeClaimSpec(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimStatus": schema_k8sio_api_core_v1_PersistentVolumeClaimStatus(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimTemplate": schema_k8sio_api_core_v1_PersistentVolumeClaimTemplate(ref), - "k8s.io/api/core/v1.PersistentVolumeClaimVolumeSource": schema_k8sio_api_core_v1_PersistentVolumeClaimVolumeSource(ref), - "k8s.io/api/core/v1.PersistentVolumeList": schema_k8sio_api_core_v1_PersistentVolumeList(ref), - "k8s.io/api/core/v1.PersistentVolumeSource": schema_k8sio_api_core_v1_PersistentVolumeSource(ref), - "k8s.io/api/core/v1.PersistentVolumeSpec": schema_k8sio_api_core_v1_PersistentVolumeSpec(ref), - "k8s.io/api/core/v1.PersistentVolumeStatus": schema_k8sio_api_core_v1_PersistentVolumeStatus(ref), - "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource": schema_k8sio_api_core_v1_PhotonPersistentDiskVolumeSource(ref), - "k8s.io/api/core/v1.Pod": schema_k8sio_api_core_v1_Pod(ref), - "k8s.io/api/core/v1.PodAffinity": schema_k8sio_api_core_v1_PodAffinity(ref), - "k8s.io/api/core/v1.PodAffinityTerm": schema_k8sio_api_core_v1_PodAffinityTerm(ref), - "k8s.io/api/core/v1.PodAntiAffinity": schema_k8sio_api_core_v1_PodAntiAffinity(ref), - "k8s.io/api/core/v1.PodAttachOptions": schema_k8sio_api_core_v1_PodAttachOptions(ref), - "k8s.io/api/core/v1.PodCondition": schema_k8sio_api_core_v1_PodCondition(ref), - "k8s.io/api/core/v1.PodDNSConfig": schema_k8sio_api_core_v1_PodDNSConfig(ref), - "k8s.io/api/core/v1.PodDNSConfigOption": schema_k8sio_api_core_v1_PodDNSConfigOption(ref), - "k8s.io/api/core/v1.PodExecOptions": schema_k8sio_api_core_v1_PodExecOptions(ref), - "k8s.io/api/core/v1.PodIP": schema_k8sio_api_core_v1_PodIP(ref), - "k8s.io/api/core/v1.PodList": schema_k8sio_api_core_v1_PodList(ref), - "k8s.io/api/core/v1.PodLogOptions": schema_k8sio_api_core_v1_PodLogOptions(ref), - "k8s.io/api/core/v1.PodOS": schema_k8sio_api_core_v1_PodOS(ref), - "k8s.io/api/core/v1.PodPortForwardOptions": schema_k8sio_api_core_v1_PodPortForwardOptions(ref), - "k8s.io/api/core/v1.PodProxyOptions": schema_k8sio_api_core_v1_PodProxyOptions(ref), - "k8s.io/api/core/v1.PodReadinessGate": schema_k8sio_api_core_v1_PodReadinessGate(ref), - "k8s.io/api/core/v1.PodResourceClaim": schema_k8sio_api_core_v1_PodResourceClaim(ref), - "k8s.io/api/core/v1.PodSchedulingGate": schema_k8sio_api_core_v1_PodSchedulingGate(ref), - "k8s.io/api/core/v1.PodSecurityContext": schema_k8sio_api_core_v1_PodSecurityContext(ref), - "k8s.io/api/core/v1.PodSignature": schema_k8sio_api_core_v1_PodSignature(ref), - "k8s.io/api/core/v1.PodSpec": schema_k8sio_api_core_v1_PodSpec(ref), - "k8s.io/api/core/v1.PodStatus": schema_k8sio_api_core_v1_PodStatus(ref), - "k8s.io/api/core/v1.PodStatusResult": schema_k8sio_api_core_v1_PodStatusResult(ref), - "k8s.io/api/core/v1.PodTemplate": schema_k8sio_api_core_v1_PodTemplate(ref), - "k8s.io/api/core/v1.PodTemplateList": schema_k8sio_api_core_v1_PodTemplateList(ref), - "k8s.io/api/core/v1.PodTemplateSpec": schema_k8sio_api_core_v1_PodTemplateSpec(ref), - "k8s.io/api/core/v1.PortStatus": schema_k8sio_api_core_v1_PortStatus(ref), - "k8s.io/api/core/v1.PortworxVolumeSource": schema_k8sio_api_core_v1_PortworxVolumeSource(ref), - "k8s.io/api/core/v1.PreferAvoidPodsEntry": schema_k8sio_api_core_v1_PreferAvoidPodsEntry(ref), - "k8s.io/api/core/v1.PreferredSchedulingTerm": schema_k8sio_api_core_v1_PreferredSchedulingTerm(ref), - "k8s.io/api/core/v1.Probe": schema_k8sio_api_core_v1_Probe(ref), - "k8s.io/api/core/v1.ProbeHandler": schema_k8sio_api_core_v1_ProbeHandler(ref), - "k8s.io/api/core/v1.ProjectedVolumeSource": schema_k8sio_api_core_v1_ProjectedVolumeSource(ref), - "k8s.io/api/core/v1.QuobyteVolumeSource": schema_k8sio_api_core_v1_QuobyteVolumeSource(ref), - "k8s.io/api/core/v1.RBDPersistentVolumeSource": schema_k8sio_api_core_v1_RBDPersistentVolumeSource(ref), - "k8s.io/api/core/v1.RBDVolumeSource": schema_k8sio_api_core_v1_RBDVolumeSource(ref), - "k8s.io/api/core/v1.RangeAllocation": schema_k8sio_api_core_v1_RangeAllocation(ref), - "k8s.io/api/core/v1.ReplicationController": schema_k8sio_api_core_v1_ReplicationController(ref), - "k8s.io/api/core/v1.ReplicationControllerCondition": schema_k8sio_api_core_v1_ReplicationControllerCondition(ref), - "k8s.io/api/core/v1.ReplicationControllerList": schema_k8sio_api_core_v1_ReplicationControllerList(ref), - "k8s.io/api/core/v1.ReplicationControllerSpec": schema_k8sio_api_core_v1_ReplicationControllerSpec(ref), - "k8s.io/api/core/v1.ReplicationControllerStatus": schema_k8sio_api_core_v1_ReplicationControllerStatus(ref), - "k8s.io/api/core/v1.ResourceClaim": schema_k8sio_api_core_v1_ResourceClaim(ref), - "k8s.io/api/core/v1.ResourceFieldSelector": schema_k8sio_api_core_v1_ResourceFieldSelector(ref), - "k8s.io/api/core/v1.ResourceQuota": schema_k8sio_api_core_v1_ResourceQuota(ref), - "k8s.io/api/core/v1.ResourceQuotaList": schema_k8sio_api_core_v1_ResourceQuotaList(ref), - "k8s.io/api/core/v1.ResourceQuotaSpec": schema_k8sio_api_core_v1_ResourceQuotaSpec(ref), - "k8s.io/api/core/v1.ResourceQuotaStatus": schema_k8sio_api_core_v1_ResourceQuotaStatus(ref), - "k8s.io/api/core/v1.ResourceRequirements": schema_k8sio_api_core_v1_ResourceRequirements(ref), - "k8s.io/api/core/v1.SELinuxOptions": schema_k8sio_api_core_v1_SELinuxOptions(ref), - "k8s.io/api/core/v1.ScaleIOPersistentVolumeSource": schema_k8sio_api_core_v1_ScaleIOPersistentVolumeSource(ref), - "k8s.io/api/core/v1.ScaleIOVolumeSource": schema_k8sio_api_core_v1_ScaleIOVolumeSource(ref), - "k8s.io/api/core/v1.ScopeSelector": schema_k8sio_api_core_v1_ScopeSelector(ref), - "k8s.io/api/core/v1.ScopedResourceSelectorRequirement": schema_k8sio_api_core_v1_ScopedResourceSelectorRequirement(ref), - "k8s.io/api/core/v1.SeccompProfile": schema_k8sio_api_core_v1_SeccompProfile(ref), - "k8s.io/api/core/v1.Secret": schema_k8sio_api_core_v1_Secret(ref), - "k8s.io/api/core/v1.SecretEnvSource": schema_k8sio_api_core_v1_SecretEnvSource(ref), - "k8s.io/api/core/v1.SecretKeySelector": schema_k8sio_api_core_v1_SecretKeySelector(ref), - "k8s.io/api/core/v1.SecretList": schema_k8sio_api_core_v1_SecretList(ref), - "k8s.io/api/core/v1.SecretProjection": schema_k8sio_api_core_v1_SecretProjection(ref), - "k8s.io/api/core/v1.SecretReference": schema_k8sio_api_core_v1_SecretReference(ref), - "k8s.io/api/core/v1.SecretVolumeSource": schema_k8sio_api_core_v1_SecretVolumeSource(ref), - "k8s.io/api/core/v1.SecurityContext": schema_k8sio_api_core_v1_SecurityContext(ref), - "k8s.io/api/core/v1.SerializedReference": schema_k8sio_api_core_v1_SerializedReference(ref), - "k8s.io/api/core/v1.Service": schema_k8sio_api_core_v1_Service(ref), - "k8s.io/api/core/v1.ServiceAccount": schema_k8sio_api_core_v1_ServiceAccount(ref), - "k8s.io/api/core/v1.ServiceAccountList": schema_k8sio_api_core_v1_ServiceAccountList(ref), - "k8s.io/api/core/v1.ServiceAccountTokenProjection": schema_k8sio_api_core_v1_ServiceAccountTokenProjection(ref), - "k8s.io/api/core/v1.ServiceList": schema_k8sio_api_core_v1_ServiceList(ref), - "k8s.io/api/core/v1.ServicePort": schema_k8sio_api_core_v1_ServicePort(ref), - "k8s.io/api/core/v1.ServiceProxyOptions": schema_k8sio_api_core_v1_ServiceProxyOptions(ref), - "k8s.io/api/core/v1.ServiceSpec": schema_k8sio_api_core_v1_ServiceSpec(ref), - "k8s.io/api/core/v1.ServiceStatus": schema_k8sio_api_core_v1_ServiceStatus(ref), - "k8s.io/api/core/v1.SessionAffinityConfig": schema_k8sio_api_core_v1_SessionAffinityConfig(ref), - "k8s.io/api/core/v1.StorageOSPersistentVolumeSource": schema_k8sio_api_core_v1_StorageOSPersistentVolumeSource(ref), - "k8s.io/api/core/v1.StorageOSVolumeSource": schema_k8sio_api_core_v1_StorageOSVolumeSource(ref), - "k8s.io/api/core/v1.Sysctl": schema_k8sio_api_core_v1_Sysctl(ref), - "k8s.io/api/core/v1.TCPSocketAction": schema_k8sio_api_core_v1_TCPSocketAction(ref), - "k8s.io/api/core/v1.Taint": schema_k8sio_api_core_v1_Taint(ref), - "k8s.io/api/core/v1.Toleration": schema_k8sio_api_core_v1_Toleration(ref), - "k8s.io/api/core/v1.TopologySelectorLabelRequirement": schema_k8sio_api_core_v1_TopologySelectorLabelRequirement(ref), - "k8s.io/api/core/v1.TopologySelectorTerm": schema_k8sio_api_core_v1_TopologySelectorTerm(ref), - "k8s.io/api/core/v1.TopologySpreadConstraint": schema_k8sio_api_core_v1_TopologySpreadConstraint(ref), - "k8s.io/api/core/v1.TypedLocalObjectReference": schema_k8sio_api_core_v1_TypedLocalObjectReference(ref), - "k8s.io/api/core/v1.TypedObjectReference": schema_k8sio_api_core_v1_TypedObjectReference(ref), - "k8s.io/api/core/v1.Volume": schema_k8sio_api_core_v1_Volume(ref), - "k8s.io/api/core/v1.VolumeDevice": schema_k8sio_api_core_v1_VolumeDevice(ref), - "k8s.io/api/core/v1.VolumeMount": schema_k8sio_api_core_v1_VolumeMount(ref), - "k8s.io/api/core/v1.VolumeNodeAffinity": schema_k8sio_api_core_v1_VolumeNodeAffinity(ref), - "k8s.io/api/core/v1.VolumeProjection": schema_k8sio_api_core_v1_VolumeProjection(ref), - "k8s.io/api/core/v1.VolumeSource": schema_k8sio_api_core_v1_VolumeSource(ref), - "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource": schema_k8sio_api_core_v1_VsphereVirtualDiskVolumeSource(ref), - "k8s.io/api/core/v1.WeightedPodAffinityTerm": schema_k8sio_api_core_v1_WeightedPodAffinityTerm(ref), - "k8s.io/api/core/v1.WindowsSecurityContextOptions": schema_k8sio_api_core_v1_WindowsSecurityContextOptions(ref), - "k8s.io/apimachinery/pkg/api/resource.Quantity": schema_apimachinery_pkg_api_resource_Quantity(ref), - "k8s.io/apimachinery/pkg/api/resource.int64Amount": schema_apimachinery_pkg_api_resource_int64Amount(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup": schema_pkg_apis_meta_v1_APIGroup(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.APIGroupList": schema_pkg_apis_meta_v1_APIGroupList(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.APIResource": schema_pkg_apis_meta_v1_APIResource(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.APIResourceList": schema_pkg_apis_meta_v1_APIResourceList(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.APIVersions": schema_pkg_apis_meta_v1_APIVersions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ApplyOptions": schema_pkg_apis_meta_v1_ApplyOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Condition": schema_pkg_apis_meta_v1_Condition(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.CreateOptions": schema_pkg_apis_meta_v1_CreateOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.DeleteOptions": schema_pkg_apis_meta_v1_DeleteOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Duration": schema_pkg_apis_meta_v1_Duration(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.FieldsV1": schema_pkg_apis_meta_v1_FieldsV1(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GetOptions": schema_pkg_apis_meta_v1_GetOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupKind": schema_pkg_apis_meta_v1_GroupKind(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupResource": schema_pkg_apis_meta_v1_GroupResource(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersion": schema_pkg_apis_meta_v1_GroupVersion(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery": schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionKind": schema_pkg_apis_meta_v1_GroupVersionKind(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionResource": schema_pkg_apis_meta_v1_GroupVersionResource(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.InternalEvent": schema_pkg_apis_meta_v1_InternalEvent(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector": schema_pkg_apis_meta_v1_LabelSelector(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement": schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.List": schema_pkg_apis_meta_v1_List(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta": schema_pkg_apis_meta_v1_ListMeta(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ListOptions": schema_pkg_apis_meta_v1_ListOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry": schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime": schema_pkg_apis_meta_v1_MicroTime(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta": schema_pkg_apis_meta_v1_ObjectMeta(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference": schema_pkg_apis_meta_v1_OwnerReference(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata": schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadataList": schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Patch": schema_pkg_apis_meta_v1_Patch(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.PatchOptions": schema_pkg_apis_meta_v1_PatchOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Preconditions": schema_pkg_apis_meta_v1_Preconditions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.RootPaths": schema_pkg_apis_meta_v1_RootPaths(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR": schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Status": schema_pkg_apis_meta_v1_Status(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause": schema_pkg_apis_meta_v1_StatusCause(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.StatusDetails": schema_pkg_apis_meta_v1_StatusDetails(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Table": schema_pkg_apis_meta_v1_Table(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition": schema_pkg_apis_meta_v1_TableColumnDefinition(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.TableOptions": schema_pkg_apis_meta_v1_TableOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.TableRow": schema_pkg_apis_meta_v1_TableRow(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition": schema_pkg_apis_meta_v1_TableRowCondition(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Time": schema_pkg_apis_meta_v1_Time(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.Timestamp": schema_pkg_apis_meta_v1_Timestamp(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta": schema_pkg_apis_meta_v1_TypeMeta(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.UpdateOptions": schema_pkg_apis_meta_v1_UpdateOptions(ref), - "k8s.io/apimachinery/pkg/apis/meta/v1.WatchEvent": schema_pkg_apis_meta_v1_WatchEvent(ref), - "k8s.io/apimachinery/pkg/runtime.RawExtension": schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), - "k8s.io/apimachinery/pkg/runtime.TypeMeta": schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), - "k8s.io/apimachinery/pkg/runtime.Unknown": schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), + "k8s.io/api/core/v1.Binding": schema_k8sio_api_core_v1_Binding(ref), + "k8s.io/api/core/v1.CSIPersistentVolumeSource": schema_k8sio_api_core_v1_CSIPersistentVolumeSource(ref), + "k8s.io/api/core/v1.CSIVolumeSource": schema_k8sio_api_core_v1_CSIVolumeSource(ref), + "k8s.io/api/core/v1.Capabilities": schema_k8sio_api_core_v1_Capabilities(ref), + "k8s.io/api/core/v1.CephFSPersistentVolumeSource": schema_k8sio_api_core_v1_CephFSPersistentVolumeSource(ref), + "k8s.io/api/core/v1.CephFSVolumeSource": schema_k8sio_api_core_v1_CephFSVolumeSource(ref), + "k8s.io/api/core/v1.CinderPersistentVolumeSource": schema_k8sio_api_core_v1_CinderPersistentVolumeSource(ref), + "k8s.io/api/core/v1.CinderVolumeSource": schema_k8sio_api_core_v1_CinderVolumeSource(ref), + "k8s.io/api/core/v1.ClaimSource": schema_k8sio_api_core_v1_ClaimSource(ref), + "k8s.io/api/core/v1.ClientIPConfig": schema_k8sio_api_core_v1_ClientIPConfig(ref), + "k8s.io/api/core/v1.ComponentCondition": schema_k8sio_api_core_v1_ComponentCondition(ref), + "k8s.io/api/core/v1.ComponentStatus": schema_k8sio_api_core_v1_ComponentStatus(ref), + "k8s.io/api/core/v1.ComponentStatusList": schema_k8sio_api_core_v1_ComponentStatusList(ref), + "k8s.io/api/core/v1.ConfigMap": schema_k8sio_api_core_v1_ConfigMap(ref), + "k8s.io/api/core/v1.ConfigMapEnvSource": schema_k8sio_api_core_v1_ConfigMapEnvSource(ref), + "k8s.io/api/core/v1.ConfigMapKeySelector": schema_k8sio_api_core_v1_ConfigMapKeySelector(ref), + "k8s.io/api/core/v1.ConfigMapList": schema_k8sio_api_core_v1_ConfigMapList(ref), + "k8s.io/api/core/v1.ConfigMapNodeConfigSource": schema_k8sio_api_core_v1_ConfigMapNodeConfigSource(ref), + "k8s.io/api/core/v1.ConfigMapProjection": schema_k8sio_api_core_v1_ConfigMapProjection(ref), + "k8s.io/api/core/v1.ConfigMapVolumeSource": schema_k8sio_api_core_v1_ConfigMapVolumeSource(ref), + "k8s.io/api/core/v1.Container": schema_k8sio_api_core_v1_Container(ref), + "k8s.io/api/core/v1.ContainerImage": schema_k8sio_api_core_v1_ContainerImage(ref), + "k8s.io/api/core/v1.ContainerPort": schema_k8sio_api_core_v1_ContainerPort(ref), + "k8s.io/api/core/v1.ContainerResizePolicy": schema_k8sio_api_core_v1_ContainerResizePolicy(ref), + "k8s.io/api/core/v1.ContainerState": schema_k8sio_api_core_v1_ContainerState(ref), + "k8s.io/api/core/v1.ContainerStateRunning": schema_k8sio_api_core_v1_ContainerStateRunning(ref), + "k8s.io/api/core/v1.ContainerStateTerminated": schema_k8sio_api_core_v1_ContainerStateTerminated(ref), + "k8s.io/api/core/v1.ContainerStateWaiting": schema_k8sio_api_core_v1_ContainerStateWaiting(ref), + "k8s.io/api/core/v1.ContainerStatus": schema_k8sio_api_core_v1_ContainerStatus(ref), + "k8s.io/api/core/v1.DaemonEndpoint": schema_k8sio_api_core_v1_DaemonEndpoint(ref), + "k8s.io/api/core/v1.DownwardAPIProjection": schema_k8sio_api_core_v1_DownwardAPIProjection(ref), + "k8s.io/api/core/v1.DownwardAPIVolumeFile": schema_k8sio_api_core_v1_DownwardAPIVolumeFile(ref), + "k8s.io/api/core/v1.DownwardAPIVolumeSource": schema_k8sio_api_core_v1_DownwardAPIVolumeSource(ref), + "k8s.io/api/core/v1.EmptyDirVolumeSource": schema_k8sio_api_core_v1_EmptyDirVolumeSource(ref), + "k8s.io/api/core/v1.EndpointAddress": schema_k8sio_api_core_v1_EndpointAddress(ref), + "k8s.io/api/core/v1.EndpointPort": schema_k8sio_api_core_v1_EndpointPort(ref), + "k8s.io/api/core/v1.EndpointSubset": schema_k8sio_api_core_v1_EndpointSubset(ref), + "k8s.io/api/core/v1.Endpoints": schema_k8sio_api_core_v1_Endpoints(ref), + "k8s.io/api/core/v1.EndpointsList": schema_k8sio_api_core_v1_EndpointsList(ref), + "k8s.io/api/core/v1.EnvFromSource": schema_k8sio_api_core_v1_EnvFromSource(ref), + "k8s.io/api/core/v1.EnvVar": schema_k8sio_api_core_v1_EnvVar(ref), + "k8s.io/api/core/v1.EnvVarSource": schema_k8sio_api_core_v1_EnvVarSource(ref), + "k8s.io/api/core/v1.EphemeralContainer": schema_k8sio_api_core_v1_EphemeralContainer(ref), + "k8s.io/api/core/v1.EphemeralContainerCommon": schema_k8sio_api_core_v1_EphemeralContainerCommon(ref), + "k8s.io/api/core/v1.EphemeralVolumeSource": schema_k8sio_api_core_v1_EphemeralVolumeSource(ref), + "k8s.io/api/core/v1.Event": schema_k8sio_api_core_v1_Event(ref), + "k8s.io/api/core/v1.EventList": schema_k8sio_api_core_v1_EventList(ref), + "k8s.io/api/core/v1.EventSeries": schema_k8sio_api_core_v1_EventSeries(ref), + "k8s.io/api/core/v1.EventSource": schema_k8sio_api_core_v1_EventSource(ref), + "k8s.io/api/core/v1.ExecAction": schema_k8sio_api_core_v1_ExecAction(ref), + "k8s.io/api/core/v1.FCVolumeSource": schema_k8sio_api_core_v1_FCVolumeSource(ref), + "k8s.io/api/core/v1.FlexPersistentVolumeSource": schema_k8sio_api_core_v1_FlexPersistentVolumeSource(ref), + "k8s.io/api/core/v1.FlexVolumeSource": schema_k8sio_api_core_v1_FlexVolumeSource(ref), + "k8s.io/api/core/v1.FlockerVolumeSource": schema_k8sio_api_core_v1_FlockerVolumeSource(ref), + "k8s.io/api/core/v1.GCEPersistentDiskVolumeSource": schema_k8sio_api_core_v1_GCEPersistentDiskVolumeSource(ref), + "k8s.io/api/core/v1.GRPCAction": schema_k8sio_api_core_v1_GRPCAction(ref), + "k8s.io/api/core/v1.GitRepoVolumeSource": schema_k8sio_api_core_v1_GitRepoVolumeSource(ref), + "k8s.io/api/core/v1.GlusterfsPersistentVolumeSource": schema_k8sio_api_core_v1_GlusterfsPersistentVolumeSource(ref), + "k8s.io/api/core/v1.GlusterfsVolumeSource": schema_k8sio_api_core_v1_GlusterfsVolumeSource(ref), + "k8s.io/api/core/v1.HTTPGetAction": schema_k8sio_api_core_v1_HTTPGetAction(ref), + "k8s.io/api/core/v1.HTTPHeader": schema_k8sio_api_core_v1_HTTPHeader(ref), + "k8s.io/api/core/v1.HostAlias": schema_k8sio_api_core_v1_HostAlias(ref), + "k8s.io/api/core/v1.HostPathVolumeSource": schema_k8sio_api_core_v1_HostPathVolumeSource(ref), + "k8s.io/api/core/v1.ISCSIPersistentVolumeSource": schema_k8sio_api_core_v1_ISCSIPersistentVolumeSource(ref), + "k8s.io/api/core/v1.ISCSIVolumeSource": schema_k8sio_api_core_v1_ISCSIVolumeSource(ref), + "k8s.io/api/core/v1.KeyToPath": schema_k8sio_api_core_v1_KeyToPath(ref), + "k8s.io/api/core/v1.Lifecycle": schema_k8sio_api_core_v1_Lifecycle(ref), + "k8s.io/api/core/v1.LifecycleHandler": schema_k8sio_api_core_v1_LifecycleHandler(ref), + "k8s.io/api/core/v1.LimitRange": schema_k8sio_api_core_v1_LimitRange(ref), + "k8s.io/api/core/v1.LimitRangeItem": schema_k8sio_api_core_v1_LimitRangeItem(ref), + "k8s.io/api/core/v1.LimitRangeList": schema_k8sio_api_core_v1_LimitRangeList(ref), + "k8s.io/api/core/v1.LimitRangeSpec": schema_k8sio_api_core_v1_LimitRangeSpec(ref), + "k8s.io/api/core/v1.List": schema_k8sio_api_core_v1_List(ref), + "k8s.io/api/core/v1.LoadBalancerIngress": schema_k8sio_api_core_v1_LoadBalancerIngress(ref), + "k8s.io/api/core/v1.LoadBalancerStatus": schema_k8sio_api_core_v1_LoadBalancerStatus(ref), + "k8s.io/api/core/v1.LocalObjectReference": schema_k8sio_api_core_v1_LocalObjectReference(ref), + "k8s.io/api/core/v1.LocalVolumeSource": schema_k8sio_api_core_v1_LocalVolumeSource(ref), + "k8s.io/api/core/v1.NFSVolumeSource": schema_k8sio_api_core_v1_NFSVolumeSource(ref), + "k8s.io/api/core/v1.Namespace": schema_k8sio_api_core_v1_Namespace(ref), + "k8s.io/api/core/v1.NamespaceCondition": schema_k8sio_api_core_v1_NamespaceCondition(ref), + "k8s.io/api/core/v1.NamespaceList": schema_k8sio_api_core_v1_NamespaceList(ref), + "k8s.io/api/core/v1.NamespaceSpec": schema_k8sio_api_core_v1_NamespaceSpec(ref), + "k8s.io/api/core/v1.NamespaceStatus": schema_k8sio_api_core_v1_NamespaceStatus(ref), + "k8s.io/api/core/v1.Node": schema_k8sio_api_core_v1_Node(ref), + "k8s.io/api/core/v1.NodeAddress": schema_k8sio_api_core_v1_NodeAddress(ref), + "k8s.io/api/core/v1.NodeAffinity": schema_k8sio_api_core_v1_NodeAffinity(ref), + "k8s.io/api/core/v1.NodeCondition": schema_k8sio_api_core_v1_NodeCondition(ref), + "k8s.io/api/core/v1.NodeConfigSource": schema_k8sio_api_core_v1_NodeConfigSource(ref), + "k8s.io/api/core/v1.NodeConfigStatus": schema_k8sio_api_core_v1_NodeConfigStatus(ref), + "k8s.io/api/core/v1.NodeDaemonEndpoints": schema_k8sio_api_core_v1_NodeDaemonEndpoints(ref), + "k8s.io/api/core/v1.NodeList": schema_k8sio_api_core_v1_NodeList(ref), + "k8s.io/api/core/v1.NodeProxyOptions": schema_k8sio_api_core_v1_NodeProxyOptions(ref), + "k8s.io/api/core/v1.NodeResources": schema_k8sio_api_core_v1_NodeResources(ref), + "k8s.io/api/core/v1.NodeSelector": schema_k8sio_api_core_v1_NodeSelector(ref), + "k8s.io/api/core/v1.NodeSelectorRequirement": schema_k8sio_api_core_v1_NodeSelectorRequirement(ref), + "k8s.io/api/core/v1.NodeSelectorTerm": schema_k8sio_api_core_v1_NodeSelectorTerm(ref), + "k8s.io/api/core/v1.NodeSpec": schema_k8sio_api_core_v1_NodeSpec(ref), + "k8s.io/api/core/v1.NodeStatus": schema_k8sio_api_core_v1_NodeStatus(ref), + "k8s.io/api/core/v1.NodeSystemInfo": schema_k8sio_api_core_v1_NodeSystemInfo(ref), + "k8s.io/api/core/v1.ObjectFieldSelector": schema_k8sio_api_core_v1_ObjectFieldSelector(ref), + "k8s.io/api/core/v1.ObjectReference": schema_k8sio_api_core_v1_ObjectReference(ref), + "k8s.io/api/core/v1.PersistentVolume": schema_k8sio_api_core_v1_PersistentVolume(ref), + "k8s.io/api/core/v1.PersistentVolumeClaim": schema_k8sio_api_core_v1_PersistentVolumeClaim(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimCondition": schema_k8sio_api_core_v1_PersistentVolumeClaimCondition(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimList": schema_k8sio_api_core_v1_PersistentVolumeClaimList(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimSpec": schema_k8sio_api_core_v1_PersistentVolumeClaimSpec(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimStatus": schema_k8sio_api_core_v1_PersistentVolumeClaimStatus(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimTemplate": schema_k8sio_api_core_v1_PersistentVolumeClaimTemplate(ref), + "k8s.io/api/core/v1.PersistentVolumeClaimVolumeSource": schema_k8sio_api_core_v1_PersistentVolumeClaimVolumeSource(ref), + "k8s.io/api/core/v1.PersistentVolumeList": schema_k8sio_api_core_v1_PersistentVolumeList(ref), + "k8s.io/api/core/v1.PersistentVolumeSource": schema_k8sio_api_core_v1_PersistentVolumeSource(ref), + "k8s.io/api/core/v1.PersistentVolumeSpec": schema_k8sio_api_core_v1_PersistentVolumeSpec(ref), + "k8s.io/api/core/v1.PersistentVolumeStatus": schema_k8sio_api_core_v1_PersistentVolumeStatus(ref), + "k8s.io/api/core/v1.PhotonPersistentDiskVolumeSource": schema_k8sio_api_core_v1_PhotonPersistentDiskVolumeSource(ref), + "k8s.io/api/core/v1.Pod": schema_k8sio_api_core_v1_Pod(ref), + "k8s.io/api/core/v1.PodAffinity": schema_k8sio_api_core_v1_PodAffinity(ref), + "k8s.io/api/core/v1.PodAffinityTerm": schema_k8sio_api_core_v1_PodAffinityTerm(ref), + "k8s.io/api/core/v1.PodAntiAffinity": schema_k8sio_api_core_v1_PodAntiAffinity(ref), + "k8s.io/api/core/v1.PodAttachOptions": schema_k8sio_api_core_v1_PodAttachOptions(ref), + "k8s.io/api/core/v1.PodCondition": schema_k8sio_api_core_v1_PodCondition(ref), + "k8s.io/api/core/v1.PodDNSConfig": schema_k8sio_api_core_v1_PodDNSConfig(ref), + "k8s.io/api/core/v1.PodDNSConfigOption": schema_k8sio_api_core_v1_PodDNSConfigOption(ref), + "k8s.io/api/core/v1.PodExecOptions": schema_k8sio_api_core_v1_PodExecOptions(ref), + "k8s.io/api/core/v1.PodIP": schema_k8sio_api_core_v1_PodIP(ref), + "k8s.io/api/core/v1.PodList": schema_k8sio_api_core_v1_PodList(ref), + "k8s.io/api/core/v1.PodLogOptions": schema_k8sio_api_core_v1_PodLogOptions(ref), + "k8s.io/api/core/v1.PodOS": schema_k8sio_api_core_v1_PodOS(ref), + "k8s.io/api/core/v1.PodPortForwardOptions": schema_k8sio_api_core_v1_PodPortForwardOptions(ref), + "k8s.io/api/core/v1.PodProxyOptions": schema_k8sio_api_core_v1_PodProxyOptions(ref), + "k8s.io/api/core/v1.PodReadinessGate": schema_k8sio_api_core_v1_PodReadinessGate(ref), + "k8s.io/api/core/v1.PodResourceClaim": schema_k8sio_api_core_v1_PodResourceClaim(ref), + "k8s.io/api/core/v1.PodSchedulingGate": schema_k8sio_api_core_v1_PodSchedulingGate(ref), + "k8s.io/api/core/v1.PodSecurityContext": schema_k8sio_api_core_v1_PodSecurityContext(ref), + "k8s.io/api/core/v1.PodSignature": schema_k8sio_api_core_v1_PodSignature(ref), + "k8s.io/api/core/v1.PodSpec": schema_k8sio_api_core_v1_PodSpec(ref), + "k8s.io/api/core/v1.PodStatus": schema_k8sio_api_core_v1_PodStatus(ref), + "k8s.io/api/core/v1.PodStatusResult": schema_k8sio_api_core_v1_PodStatusResult(ref), + "k8s.io/api/core/v1.PodTemplate": schema_k8sio_api_core_v1_PodTemplate(ref), + "k8s.io/api/core/v1.PodTemplateList": schema_k8sio_api_core_v1_PodTemplateList(ref), + "k8s.io/api/core/v1.PodTemplateSpec": schema_k8sio_api_core_v1_PodTemplateSpec(ref), + "k8s.io/api/core/v1.PortStatus": schema_k8sio_api_core_v1_PortStatus(ref), + "k8s.io/api/core/v1.PortworxVolumeSource": schema_k8sio_api_core_v1_PortworxVolumeSource(ref), + "k8s.io/api/core/v1.PreferAvoidPodsEntry": schema_k8sio_api_core_v1_PreferAvoidPodsEntry(ref), + "k8s.io/api/core/v1.PreferredSchedulingTerm": schema_k8sio_api_core_v1_PreferredSchedulingTerm(ref), + "k8s.io/api/core/v1.Probe": schema_k8sio_api_core_v1_Probe(ref), + "k8s.io/api/core/v1.ProbeHandler": schema_k8sio_api_core_v1_ProbeHandler(ref), + "k8s.io/api/core/v1.ProjectedVolumeSource": schema_k8sio_api_core_v1_ProjectedVolumeSource(ref), + "k8s.io/api/core/v1.QuobyteVolumeSource": schema_k8sio_api_core_v1_QuobyteVolumeSource(ref), + "k8s.io/api/core/v1.RBDPersistentVolumeSource": schema_k8sio_api_core_v1_RBDPersistentVolumeSource(ref), + "k8s.io/api/core/v1.RBDVolumeSource": schema_k8sio_api_core_v1_RBDVolumeSource(ref), + "k8s.io/api/core/v1.RangeAllocation": schema_k8sio_api_core_v1_RangeAllocation(ref), + "k8s.io/api/core/v1.ReplicationController": schema_k8sio_api_core_v1_ReplicationController(ref), + "k8s.io/api/core/v1.ReplicationControllerCondition": schema_k8sio_api_core_v1_ReplicationControllerCondition(ref), + "k8s.io/api/core/v1.ReplicationControllerList": schema_k8sio_api_core_v1_ReplicationControllerList(ref), + "k8s.io/api/core/v1.ReplicationControllerSpec": schema_k8sio_api_core_v1_ReplicationControllerSpec(ref), + "k8s.io/api/core/v1.ReplicationControllerStatus": schema_k8sio_api_core_v1_ReplicationControllerStatus(ref), + "k8s.io/api/core/v1.ResourceClaim": schema_k8sio_api_core_v1_ResourceClaim(ref), + "k8s.io/api/core/v1.ResourceFieldSelector": schema_k8sio_api_core_v1_ResourceFieldSelector(ref), + "k8s.io/api/core/v1.ResourceQuota": schema_k8sio_api_core_v1_ResourceQuota(ref), + "k8s.io/api/core/v1.ResourceQuotaList": schema_k8sio_api_core_v1_ResourceQuotaList(ref), + "k8s.io/api/core/v1.ResourceQuotaSpec": schema_k8sio_api_core_v1_ResourceQuotaSpec(ref), + "k8s.io/api/core/v1.ResourceQuotaStatus": schema_k8sio_api_core_v1_ResourceQuotaStatus(ref), + "k8s.io/api/core/v1.ResourceRequirements": schema_k8sio_api_core_v1_ResourceRequirements(ref), + "k8s.io/api/core/v1.SELinuxOptions": schema_k8sio_api_core_v1_SELinuxOptions(ref), + "k8s.io/api/core/v1.ScaleIOPersistentVolumeSource": schema_k8sio_api_core_v1_ScaleIOPersistentVolumeSource(ref), + "k8s.io/api/core/v1.ScaleIOVolumeSource": schema_k8sio_api_core_v1_ScaleIOVolumeSource(ref), + "k8s.io/api/core/v1.ScopeSelector": schema_k8sio_api_core_v1_ScopeSelector(ref), + "k8s.io/api/core/v1.ScopedResourceSelectorRequirement": schema_k8sio_api_core_v1_ScopedResourceSelectorRequirement(ref), + "k8s.io/api/core/v1.SeccompProfile": schema_k8sio_api_core_v1_SeccompProfile(ref), + "k8s.io/api/core/v1.Secret": schema_k8sio_api_core_v1_Secret(ref), + "k8s.io/api/core/v1.SecretEnvSource": schema_k8sio_api_core_v1_SecretEnvSource(ref), + "k8s.io/api/core/v1.SecretKeySelector": schema_k8sio_api_core_v1_SecretKeySelector(ref), + "k8s.io/api/core/v1.SecretList": schema_k8sio_api_core_v1_SecretList(ref), + "k8s.io/api/core/v1.SecretProjection": schema_k8sio_api_core_v1_SecretProjection(ref), + "k8s.io/api/core/v1.SecretReference": schema_k8sio_api_core_v1_SecretReference(ref), + "k8s.io/api/core/v1.SecretVolumeSource": schema_k8sio_api_core_v1_SecretVolumeSource(ref), + "k8s.io/api/core/v1.SecurityContext": schema_k8sio_api_core_v1_SecurityContext(ref), + "k8s.io/api/core/v1.SerializedReference": schema_k8sio_api_core_v1_SerializedReference(ref), + "k8s.io/api/core/v1.Service": schema_k8sio_api_core_v1_Service(ref), + "k8s.io/api/core/v1.ServiceAccount": schema_k8sio_api_core_v1_ServiceAccount(ref), + "k8s.io/api/core/v1.ServiceAccountList": schema_k8sio_api_core_v1_ServiceAccountList(ref), + "k8s.io/api/core/v1.ServiceAccountTokenProjection": schema_k8sio_api_core_v1_ServiceAccountTokenProjection(ref), + "k8s.io/api/core/v1.ServiceList": schema_k8sio_api_core_v1_ServiceList(ref), + "k8s.io/api/core/v1.ServicePort": schema_k8sio_api_core_v1_ServicePort(ref), + "k8s.io/api/core/v1.ServiceProxyOptions": schema_k8sio_api_core_v1_ServiceProxyOptions(ref), + "k8s.io/api/core/v1.ServiceSpec": schema_k8sio_api_core_v1_ServiceSpec(ref), + "k8s.io/api/core/v1.ServiceStatus": schema_k8sio_api_core_v1_ServiceStatus(ref), + "k8s.io/api/core/v1.SessionAffinityConfig": schema_k8sio_api_core_v1_SessionAffinityConfig(ref), + "k8s.io/api/core/v1.StorageOSPersistentVolumeSource": schema_k8sio_api_core_v1_StorageOSPersistentVolumeSource(ref), + "k8s.io/api/core/v1.StorageOSVolumeSource": schema_k8sio_api_core_v1_StorageOSVolumeSource(ref), + "k8s.io/api/core/v1.Sysctl": schema_k8sio_api_core_v1_Sysctl(ref), + "k8s.io/api/core/v1.TCPSocketAction": schema_k8sio_api_core_v1_TCPSocketAction(ref), + "k8s.io/api/core/v1.Taint": schema_k8sio_api_core_v1_Taint(ref), + "k8s.io/api/core/v1.Toleration": schema_k8sio_api_core_v1_Toleration(ref), + "k8s.io/api/core/v1.TopologySelectorLabelRequirement": schema_k8sio_api_core_v1_TopologySelectorLabelRequirement(ref), + "k8s.io/api/core/v1.TopologySelectorTerm": schema_k8sio_api_core_v1_TopologySelectorTerm(ref), + "k8s.io/api/core/v1.TopologySpreadConstraint": schema_k8sio_api_core_v1_TopologySpreadConstraint(ref), + "k8s.io/api/core/v1.TypedLocalObjectReference": schema_k8sio_api_core_v1_TypedLocalObjectReference(ref), + "k8s.io/api/core/v1.TypedObjectReference": schema_k8sio_api_core_v1_TypedObjectReference(ref), + "k8s.io/api/core/v1.Volume": schema_k8sio_api_core_v1_Volume(ref), + "k8s.io/api/core/v1.VolumeDevice": schema_k8sio_api_core_v1_VolumeDevice(ref), + "k8s.io/api/core/v1.VolumeMount": schema_k8sio_api_core_v1_VolumeMount(ref), + "k8s.io/api/core/v1.VolumeNodeAffinity": schema_k8sio_api_core_v1_VolumeNodeAffinity(ref), + "k8s.io/api/core/v1.VolumeProjection": schema_k8sio_api_core_v1_VolumeProjection(ref), + "k8s.io/api/core/v1.VolumeSource": schema_k8sio_api_core_v1_VolumeSource(ref), + "k8s.io/api/core/v1.VsphereVirtualDiskVolumeSource": schema_k8sio_api_core_v1_VsphereVirtualDiskVolumeSource(ref), + "k8s.io/api/core/v1.WeightedPodAffinityTerm": schema_k8sio_api_core_v1_WeightedPodAffinityTerm(ref), + "k8s.io/api/core/v1.WindowsSecurityContextOptions": schema_k8sio_api_core_v1_WindowsSecurityContextOptions(ref), + "k8s.io/apimachinery/pkg/api/resource.Quantity": schema_apimachinery_pkg_api_resource_Quantity(ref), + "k8s.io/apimachinery/pkg/api/resource.int64Amount": schema_apimachinery_pkg_api_resource_int64Amount(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.APIGroup": schema_pkg_apis_meta_v1_APIGroup(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.APIGroupList": schema_pkg_apis_meta_v1_APIGroupList(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.APIResource": schema_pkg_apis_meta_v1_APIResource(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.APIResourceList": schema_pkg_apis_meta_v1_APIResourceList(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.APIVersions": schema_pkg_apis_meta_v1_APIVersions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ApplyOptions": schema_pkg_apis_meta_v1_ApplyOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Condition": schema_pkg_apis_meta_v1_Condition(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.CreateOptions": schema_pkg_apis_meta_v1_CreateOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.DeleteOptions": schema_pkg_apis_meta_v1_DeleteOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Duration": schema_pkg_apis_meta_v1_Duration(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.FieldsV1": schema_pkg_apis_meta_v1_FieldsV1(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GetOptions": schema_pkg_apis_meta_v1_GetOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupKind": schema_pkg_apis_meta_v1_GroupKind(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupResource": schema_pkg_apis_meta_v1_GroupResource(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersion": schema_pkg_apis_meta_v1_GroupVersion(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionForDiscovery": schema_pkg_apis_meta_v1_GroupVersionForDiscovery(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionKind": schema_pkg_apis_meta_v1_GroupVersionKind(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.GroupVersionResource": schema_pkg_apis_meta_v1_GroupVersionResource(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.InternalEvent": schema_pkg_apis_meta_v1_InternalEvent(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelector": schema_pkg_apis_meta_v1_LabelSelector(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.LabelSelectorRequirement": schema_pkg_apis_meta_v1_LabelSelectorRequirement(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.List": schema_pkg_apis_meta_v1_List(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ListMeta": schema_pkg_apis_meta_v1_ListMeta(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ListOptions": schema_pkg_apis_meta_v1_ListOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ManagedFieldsEntry": schema_pkg_apis_meta_v1_ManagedFieldsEntry(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.MicroTime": schema_pkg_apis_meta_v1_MicroTime(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta": schema_pkg_apis_meta_v1_ObjectMeta(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.OwnerReference": schema_pkg_apis_meta_v1_OwnerReference(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadata": schema_pkg_apis_meta_v1_PartialObjectMetadata(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.PartialObjectMetadataList": schema_pkg_apis_meta_v1_PartialObjectMetadataList(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Patch": schema_pkg_apis_meta_v1_Patch(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.PatchOptions": schema_pkg_apis_meta_v1_PatchOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Preconditions": schema_pkg_apis_meta_v1_Preconditions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.RootPaths": schema_pkg_apis_meta_v1_RootPaths(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.ServerAddressByClientCIDR": schema_pkg_apis_meta_v1_ServerAddressByClientCIDR(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Status": schema_pkg_apis_meta_v1_Status(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.StatusCause": schema_pkg_apis_meta_v1_StatusCause(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.StatusDetails": schema_pkg_apis_meta_v1_StatusDetails(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Table": schema_pkg_apis_meta_v1_Table(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.TableColumnDefinition": schema_pkg_apis_meta_v1_TableColumnDefinition(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.TableOptions": schema_pkg_apis_meta_v1_TableOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.TableRow": schema_pkg_apis_meta_v1_TableRow(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.TableRowCondition": schema_pkg_apis_meta_v1_TableRowCondition(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Time": schema_pkg_apis_meta_v1_Time(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.Timestamp": schema_pkg_apis_meta_v1_Timestamp(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta": schema_pkg_apis_meta_v1_TypeMeta(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.UpdateOptions": schema_pkg_apis_meta_v1_UpdateOptions(ref), + "k8s.io/apimachinery/pkg/apis/meta/v1.WatchEvent": schema_pkg_apis_meta_v1_WatchEvent(ref), + "k8s.io/apimachinery/pkg/runtime.RawExtension": schema_k8sio_apimachinery_pkg_runtime_RawExtension(ref), + "k8s.io/apimachinery/pkg/runtime.TypeMeta": schema_k8sio_apimachinery_pkg_runtime_TypeMeta(ref), + "k8s.io/apimachinery/pkg/runtime.Unknown": schema_k8sio_apimachinery_pkg_runtime_Unknown(ref), } } @@ -684,6 +695,129 @@ func schema_pkg_apis_core_v1alpha1_AvailabilityInstance(ref common.ReferenceCall } } +func schema_pkg_apis_core_v1alpha1_Controller(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Controller specifies the config for a landscaper controller.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "workers": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + }, + }, + } +} + +func schema_pkg_apis_core_v1alpha1_Controllers(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Controllers specifies the config for the \"main\" landscaper controllers, i.e. the installation and execution controller.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "installations": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller"), + }, + }, + "executions": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller"}, + } +} + +func schema_pkg_apis_core_v1alpha1_DeployItemTimeouts(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "DeployItemTimeouts configures the timeout controller.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "pickup": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "progressingDefault": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_pkg_apis_core_v1alpha1_Deployer(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "controller": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller"), + }, + }, + "k8sClientSettings": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientSettings"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controller", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientSettings"}, + } +} + +func schema_pkg_apis_core_v1alpha1_DeployerConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "DeployerConfig configures a deployer.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "deployer": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Deployer"), + }, + }, + "resources": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources"), + }, + }, + "hpa": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HPA"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Deployer", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HPA", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources"}, + } +} + func schema_pkg_apis_core_v1alpha1_Error(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -738,6 +872,37 @@ func schema_pkg_apis_core_v1alpha1_Error(ref common.ReferenceCallback) common.Op } } +func schema_pkg_apis_core_v1alpha1_HPA(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "HPA configures the horizontal pod autoscaling of pods.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "maxReplicas": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "averageMemoryUtilization": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "averageCpuUtilization": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + }, + }, + } +} + func schema_pkg_apis_core_v1alpha1_HighAvailabilityConfig(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -1017,6 +1182,85 @@ func schema_pkg_apis_core_v1alpha1_InstanceStatus(ref common.ReferenceCallback) } } +func schema_pkg_apis_core_v1alpha1_K8SClientLimits(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "K8SClientLimits specifies the settings for a k8s client.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "burst": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + "qps": { + SchemaProps: spec.SchemaProps{ + Type: []string{"integer"}, + Format: "int32", + }, + }, + }, + }, + }, + } +} + +func schema_pkg_apis_core_v1alpha1_K8SClientSettings(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster.", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "hostClient": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientLimits"), + }, + }, + "resourceClient": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientLimits"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientLimits"}, + } +} + +func schema_pkg_apis_core_v1alpha1_Landscaper(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "controllers": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controllers"), + }, + }, + "k8sClientSettings": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientSettings"), + }, + }, + "deployItemTimeouts": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployItemTimeouts"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Controllers", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployItemTimeouts", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.K8SClientSettings"}, + } +} + func schema_pkg_apis_core_v1alpha1_LandscaperConfiguration(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -1024,6 +1268,29 @@ func schema_pkg_apis_core_v1alpha1_LandscaperConfiguration(ref common.ReferenceC Description: "LandscaperConfiguration contains the configuration for a landscaper service deployment.", Type: []string{"object"}, Properties: map[string]spec.Schema{ + "landscaper": { + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Landscaper"), + }, + }, + "resources": { + SchemaProps: spec.SchemaProps{ + Description: "Resources configures the resources of the \"central\" landscaper pod, i.e. the pod responsible for crds creation, deployer management, context controller.", + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources"), + }, + }, + "resourcesMain": { + SchemaProps: spec.SchemaProps{ + Description: "ResourcesMain configures the resources of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources"), + }, + }, + "hpaMain": { + SchemaProps: spec.SchemaProps{ + Description: "HPAMain configures the horizontal pod autoscaling of the \"main\" landscaper pods, i.e. the pods of installation and execution controller.", + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HPA"), + }, + }, "deployers": { SchemaProps: spec.SchemaProps{ Description: "Deployers is the list of deployers that are getting installed alongside with this Instance.", @@ -1039,10 +1306,26 @@ func schema_pkg_apis_core_v1alpha1_LandscaperConfiguration(ref common.ReferenceC }, }, }, + "deployersConfig": { + SchemaProps: spec.SchemaProps{ + Description: "DeployersConfig specifies the configuration for the landscaper standard deployers.", + Type: []string{"object"}, + AdditionalProperties: &spec.SchemaOrBool{ + Allows: true, + Schema: &spec.Schema{ + SchemaProps: spec.SchemaProps{ + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployerConfig"), + }, + }, + }, + }, + }, }, Required: []string{"deployers"}, }, }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.DeployerConfig", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.HPA", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Landscaper", "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.Resources"}, } } @@ -1463,6 +1746,51 @@ func schema_pkg_apis_core_v1alpha1_ObjectReference(ref common.ReferenceCallback) } } +func schema_pkg_apis_core_v1alpha1_ResourceRequests(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "cpu": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "memory": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + }, + }, + }, + } +} + +func schema_pkg_apis_core_v1alpha1_Resources(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Description: "Resources configures the resources of pods (requested cpu and memory)", + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "requests": { + SchemaProps: spec.SchemaProps{ + Default: map[string]interface{}{}, + Ref: ref("github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ResourceRequests"), + }, + }, + }, + }, + }, + Dependencies: []string{ + "github.com/gardener/landscaper-service/pkg/apis/core/v1alpha1.ResourceRequests"}, + } +} + func schema_pkg_apis_core_v1alpha1_SecretReference(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ diff --git a/pkg/controllers/instances/reconcile.go b/pkg/controllers/instances/reconcile.go index e77b65511..bb3ea16a4 100644 --- a/pkg/controllers/instances/reconcile.go +++ b/pkg/controllers/instances/reconcile.go @@ -420,8 +420,18 @@ func (c *Controller) mutateInstallation(ctx context.Context, installation *lsv1a } landscaperConfig := lsinstallation.NewLandscaperConfig() + landscaperConfig.Resources = instance.Spec.LandscaperConfiguration.Resources + landscaperConfig.ResourcesMain = instance.Spec.LandscaperConfiguration.ResourcesMain + landscaperConfig.HPAMain = instance.Spec.LandscaperConfiguration.HPAMain landscaperConfig.Deployers = instance.Spec.LandscaperConfiguration.Deployers + landscaperConfig.DeployersConfig = instance.Spec.LandscaperConfiguration.DeployersConfig landscaperConfig.Landscaper.Verbosity = logging.INFO.String() + if instance.Spec.LandscaperConfiguration.Landscaper != nil { + landscaperConfig.Landscaper.Controllers = instance.Spec.LandscaperConfiguration.Landscaper.Controllers + landscaperConfig.Landscaper.DeployItemTimeouts = instance.Spec.LandscaperConfiguration.Landscaper.DeployItemTimeouts + landscaperConfig.Landscaper.K8SClientSettings = instance.Spec.LandscaperConfiguration.Landscaper.K8SClientSettings + } + landscaperConfigRaw, err := landscaperConfig.ToAnyJSON() if err != nil { return fmt.Errorf("unable to marshal landscaper config: %w", err) diff --git a/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_instances.yaml b/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_instances.yaml index b6129b36b..a7140bcd5 100755 --- a/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_instances.yaml +++ b/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_instances.yaml @@ -69,6 +69,181 @@ spec: items: type: string type: array + deployersConfig: + additionalProperties: + description: DeployerConfig configures a deployer. + properties: + deployer: + properties: + controller: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + k8sClientSettings: + description: K8SClientSettings specifies the settings + for the k8s clients which landscaper uses to access + host and resource cluster. + properties: + hostClient: + description: K8SClientLimits specifies the settings + for a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + resourceClient: + description: K8SClientLimits specifies the settings + for a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + type: object + type: object + hpa: + description: HPA configures the horizontal pod autoscaling + of pods. + properties: + averageCpuUtilization: + format: int32 + type: integer + averageMemoryUtilization: + format: int32 + type: integer + maxReplicas: + format: int32 + type: integer + type: object + resources: + description: Resources configures the resources of pods + (requested cpu and memory) + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + description: DeployersConfig specifies the configuration for the + landscaper standard deployers. + type: object + hpaMain: + description: HPAMain configures the horizontal pod autoscaling + of the "main" landscaper pods, i.e. the pods of installation + and execution controller. + properties: + averageCpuUtilization: + format: int32 + type: integer + averageMemoryUtilization: + format: int32 + type: integer + maxReplicas: + format: int32 + type: integer + type: object + landscaper: + properties: + controllers: + description: Controllers specifies the config for the "main" + landscaper controllers, i.e. the installation and execution + controller. + properties: + executions: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + installations: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + type: object + deployItemTimeouts: + description: DeployItemTimeouts configures the timeout controller. + properties: + pickup: + type: string + progressingDefault: + type: string + type: object + k8sClientSettings: + description: K8SClientSettings specifies the settings for + the k8s clients which landscaper uses to access host and + resource cluster. + properties: + hostClient: + description: K8SClientLimits specifies the settings for + a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + resourceClient: + description: K8SClientLimits specifies the settings for + a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + type: object + type: object + resources: + description: Resources configures the resources of the "central" + landscaper pod, i.e. the pod responsible for crds creation, + deployer management, context controller. + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + resourcesMain: + description: ResourcesMain configures the resources of the "main" + landscaper pods, i.e. the pods of installation and execution + controller. + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object required: - deployers type: object diff --git a/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_landscaperdeployments.yaml b/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_landscaperdeployments.yaml index f6f9e113c..593228fd5 100755 --- a/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_landscaperdeployments.yaml +++ b/pkg/crdmanager/crdresources/landscaper-service.gardener.cloud_landscaperdeployments.yaml @@ -51,6 +51,181 @@ spec: items: type: string type: array + deployersConfig: + additionalProperties: + description: DeployerConfig configures a deployer. + properties: + deployer: + properties: + controller: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + k8sClientSettings: + description: K8SClientSettings specifies the settings + for the k8s clients which landscaper uses to access + host and resource cluster. + properties: + hostClient: + description: K8SClientLimits specifies the settings + for a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + resourceClient: + description: K8SClientLimits specifies the settings + for a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + type: object + type: object + hpa: + description: HPA configures the horizontal pod autoscaling + of pods. + properties: + averageCpuUtilization: + format: int32 + type: integer + averageMemoryUtilization: + format: int32 + type: integer + maxReplicas: + format: int32 + type: integer + type: object + resources: + description: Resources configures the resources of pods + (requested cpu and memory) + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + type: object + description: DeployersConfig specifies the configuration for the + landscaper standard deployers. + type: object + hpaMain: + description: HPAMain configures the horizontal pod autoscaling + of the "main" landscaper pods, i.e. the pods of installation + and execution controller. + properties: + averageCpuUtilization: + format: int32 + type: integer + averageMemoryUtilization: + format: int32 + type: integer + maxReplicas: + format: int32 + type: integer + type: object + landscaper: + properties: + controllers: + description: Controllers specifies the config for the "main" + landscaper controllers, i.e. the installation and execution + controller. + properties: + executions: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + installations: + description: Controller specifies the config for a landscaper + controller. + properties: + workers: + format: int32 + type: integer + type: object + type: object + deployItemTimeouts: + description: DeployItemTimeouts configures the timeout controller. + properties: + pickup: + type: string + progressingDefault: + type: string + type: object + k8sClientSettings: + description: K8SClientSettings specifies the settings for + the k8s clients which landscaper uses to access host and + resource cluster. + properties: + hostClient: + description: K8SClientLimits specifies the settings for + a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + resourceClient: + description: K8SClientLimits specifies the settings for + a k8s client. + properties: + burst: + format: int32 + type: integer + qps: + format: int32 + type: integer + type: object + type: object + type: object + resources: + description: Resources configures the resources of the "central" + landscaper pod, i.e. the pod responsible for crds creation, + deployer management, context controller. + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object + resourcesMain: + description: ResourcesMain configures the resources of the "main" + landscaper pods, i.e. the pods of installation and execution + controller. + properties: + requests: + properties: + cpu: + type: string + memory: + type: string + type: object + type: object required: - deployers type: object